Function at 0x61fe8c
Capabilities:
Check for software breakpoints
Check http status code

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa4
mov eax, dword [0x43a400]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xa0], edi
mov dword [ebp - 0x54], 0xffffffff
mov esi, dword [edi + 0x14]
mov ecx, dword [edi + 0x28]
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x48], 0
mov ebx, dword [esi + 8]
mov dword [ebp - 0x44], ebx
test ecx, ecx
je 0x61ff15
cmp ecx, dword [0x443c6c]
jne 0x61fee2
mov eax, dword [ecx + 0xc]
mov dword [0x443c6c], eax
cmp ecx, dword [0x443c70]
jne 0x61fef2
mov eax, dword [ecx + 8]
mov dword [0x443c70], eax
mov edx, dword [ecx + 0xc]
test edx, edx
je 0x61feff
mov eax, dword [ecx + 8]
mov dword [edx + 8], eax
mov edx, dword [ecx + 8]
test edx, edx
je 0x61ff0c
mov eax, dword [ecx + 0xc]
mov dword [edx + 0xc], eax
push ecx
call fcn.00625408
add esp, 4
mov dword [edi + 0x28], 0
test byte [esi], 4
je 0x61ff3e
mov eax, dword [edi + 0x4c]
push dword [eax + 4]
push dword [eax]
push 0x4414b4
push 0x100
call fcn.006060bc
add esp, 0x10
and dword [esi], 0xfffffffb
mov ecx, dword [edi + 8]
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x3c]
push eax
lea edx, [ebp - 0x30]
call fcn.0061409c
add esp, 8
mov dword [ebp - 0x34], eax
test eax, eax
jg 0x61ffb6
push 0x4414c0
push 1
call fcn.006060bc
mov edx, 0x4414e4
add esp, 8
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x61ff72
sub edx, ecx
js 0x61ff89
mov ecx, 0x4414e4
call fcn.0060610c
jmp 0x61ff8b
xor eax, eax
push eax
push 0x1f6
mov edx, 1
mov ecx, edi
call fcn.0061d0cc
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
push 0x441508
push 0x200
call fcn.006060bc
push ebx
push edi
push 0x441518
push 0x200
call fcn.006060bc
mov ecx, dword [ebp - 0x3c]
add esp, 0x18
test ecx, ecx
je 0x620048
cmp ecx, 1
je 0x620048
push 0x44152c
push 1
call fcn.006060bc
mov edx, 0x44154c
add esp, 8
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x61fffc
sub edx, ecx
js 0x620013
mov ecx, 0x44154c
call fcn.0060610c
jmp 0x620015
xor eax, eax
push eax
push 0x1f6
mov edx, 1
mov ecx, edi
call fcn.0061d0cc
mov ecx, dword [ebp - 0x48]
add esp, 8
call fcn.006063cc
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x4c]
mov dword [edi + 0x20], ecx
mov dword [eax + 0x10], ecx
or dword [esi], 1
movzx edx, word [ebx + 0x10]
test edx, edx
js 0x620068
mov ecx, dword [ebx + 0xc]
call fcn.0060610c
mov esi, eax
jmp 0x62006a
xor esi, esi
push 0
lea eax, [ebp - 0x7c]
mov edx, esi
push eax
push ecx
lea eax, [ebp - 0x9c]
mov ecx, dword [ebp - 0x40]
push eax
push 0
push 0
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x54]
push eax
sub esp, 0xc
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x8c]
push eax
push 0
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x64]
push eax
push ecx
push dword [ebp - 0x34]
xor ecx, ecx
push dword [edi + 8]
call fcn.0061477c
add esp, 0x58
mov dword [ebp - 0x34], eax
test eax, eax
jns 0x62010c
push 0x441568
push 1
call fcn.006060bc
add esp, 8
mov ecx, esi
call fcn.006063cc
mov ecx, dword [ebp - 0x48]
call fcn.006063cc
mov edx, 0x441588
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x6200ee
sub edx, ecx
js 0x61ff89
mov ecx, 0x441588
call fcn.0060610c
jmp 0x61ff8b
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0x80], edx
test edx, edx
jg 0x62012d
jl 0x620122
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x5c], eax
test eax, eax
jae 0x620133
mov eax, dword [0x444e38]
cdq
mov dword [ebp - 0x80], edx
jmp 0x620130
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x30]
cmp ecx, 0x64
jne 0x620195
mov ecx, esi
call fcn.006063cc
mov ecx, dword [ebp - 0x48]
call fcn.006063cc
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax + 8]
call fcn.0061b66c
mov edx, dword [ebp - 0x34]
sub dword [edi + 0xc], edx
mov eax, dword [edi + 0xc]
test eax, eax
jle 0x620173
mov ecx, dword [edi + 8]
push eax
lea eax, [ecx + edx]
push eax
push ecx
call fcn.00625d8c
add esp, 0xc
mov edx, 1
mov ecx, edi
call fcn.0061f06c
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
cmp ecx, 0x65
jne 0x6201d5
mov edx, 0x4415a8
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x6201a2
sub edx, ecx
js 0x6201b9
mov ecx, 0x4415a8
call fcn.0060610c
jmp 0x6201bb
xor eax, eax
push eax
push 0x1f5
mov edx, 1
mov ecx, edi
call fcn.0061d0cc
add esp, 8
jmp 0x62049b
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x62020e
mov edx, eax
call fcn.006164ec
test eax, eax
jne 0x62020b
mov ecx, 0x4415c0
call fcn.0060623c
push eax
push 0x1f8
mov edx, 1
mov ecx, edi
call fcn.0061d0cc
add esp, 8
jmp 0x62049b
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x58], eax
cmp ecx, 0xce
jne 0x62027c
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x68], edx
cmp edx, 0xffffffff
je 0x620266
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x78], eax
cmp eax, 0xffffffff
je 0x620266
cmp dword [ebp - 0x60], 0
jl 0x6202de
sub eax, edx
cmp dword [ebp - 0x60], eax
je 0x6202de
push 0x441614
push 1
call fcn.006060bc
mov ecx, 0x441634
jmp 0x620481
push 0x4415d4
push 1
call fcn.006060bc
mov ecx, 0x4415f4
jmp 0x620481
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x78], edx
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x68], edx
cmp ecx, 0x190
jge 0x6202c9
test edx, edx
jns 0x6202a7
cmp dword [ebp - 0x98], 0
jge 0x6202a7
test eax, eax
js 0x6202c9
push 0x441654
push 2
call fcn.006060bc
mov ecx, dword [ebp - 0x30]
add esp, 8
mov dword [ebp - 0x68], 0xffffffff
mov dword [ebp - 0x78], 0xffffffff
jmp 0x6202de
cmp ecx, 0x130
je 0x6202de
cmp ecx, 0x19c
cmovne eax, dword [ebp - 0x60]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x8c]
test eax, eax
je 0x620303
cmp eax, 1
je 0x620303
push 0x441674
push 1
call fcn.006060bc
mov ecx, 0x441694
jmp 0x620481
cmp ecx, 0x130
jne 0x620445
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0xc], 2
je 0x62032e
push 0x4416b4
push 1
call fcn.006060bc
mov ecx, 0x4416e0
jmp 0x620481
cmp dword [ebx + 0x50], 0
je 0x620349
cmp dword [ebp - 0x38], 0
jne 0x620349
push 0x44170c
push 2
call fcn.006060bc
add esp, 8
mov ecx, esi
call fcn.006063cc
mov eax, dword [ebp - 0x30]
cmp eax, 0xc8
je 0x62036f
cmp eax, 0xce
je 0x62036f
cmp eax, 0x130
je 0x62036f
cmp eax, 0x19c
jne 0x6203d0
mov ecx, dword [ebp - 0x18]
test cl, 0x12
jne 0x6203ae
cmp dword [ebp - 0x14], 0
je 0x6203ae
cmp dword [0x440088], 0
je 0x62038c
cmp dword [ebp - 0x10], 0
je 0x6203ae
mov eax, dword [ebp - 0x84]
test eax, eax
jl 0x6203d0
mov edx, dword [ebp - 0x88]
jg 0x6203a2
test edx, edx
jb 0x6203d0
cmp eax, dword [ebx + 0x34]
jg 0x6203d0
jl 0x6203ae
cmp edx, dword [ebx + 0x30]
ja 0x6203d0
cmp dword [0x443bcc], 0
mov eax, 0x43fecc
jne 0x6203bf
mov eax, dword [ebx + 0xc]
push ecx
push eax
push 0x44179c
push 0x10
call fcn.006060bc
add esp, 0x10
mov esi, dword [ebp - 0x40]
mov edx, 0x444e38
mov eax, dword [esi + 0x4c]
lea ecx, [esi + 0x4c]
cmp eax, dword [0x443b58]
cmovne edx, ecx
mov ecx, dword [edx]
mov eax, ecx
sub eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x30]
cmp eax, ecx
cmovle ecx, eax
cmp dword [esi + 0xc], 1
mov dword [ebp - 0x6c], ecx
je 0x6204f3
cmp edx, 0xc8
jl 0x6204f3
cmp edx, 0xcc
je 0x6204f3
cmp edx, 0x130
je 0x6204f3
mov eax, dword [ebp - 0x8c]
test eax, eax
jne 0x6204ea
xor ecx, ecx
cmp dword [ebp - 0x60], ecx
setne cl
mov dword [ebp - 0x74], ecx
jmp 0x620500
cmp ecx, 0x19c
jne 0x620349
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0xc], 2
jne 0x620470
cmp dword [ebx + 0x50], 0
jne 0x620349
mov eax, dword [ebx + 0x40]
or eax, dword [ebx + 0x44]
jne 0x620349
push 0x441730
push 1
call fcn.006060bc
mov ecx, 0x441768
call fcn.0060623c
push eax
push 0x1f6
mov edx, 1
mov ecx, edi
call fcn.0061d0cc
add esp, 0x10
mov ecx, esi
call fcn.006063cc
mov ecx, dword [ebp - 0x48]
call fcn.006063cc
mov ecx, dword [ebp - 0x64]
test ecx, ecx
je 0x6204b6
call fcn.006063cc
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x6204c6
push eax
call fcn.00625408
add esp, 4
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x6204d4
mov ecx, eax
call fcn.006063cc
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x74], 1
jmp 0x620500
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x74], 0
mov dword [edi + 0x2c], eax
mov esi, 1
mov eax, dword [edi + 0x4c]
mov dword [edi + 0x48], 0xffffffff
mov dword [ebp - 0x54], 0x400
dec dword [eax + 0x1c]
mov eax, 0
movzx ecx, word [ebx + 0x54]
test ecx, 0x1000
cmovne eax, esi
mov dword [ebp - 0x2c], eax
cmp edx, 0x130
je 0x620761
cmp edx, 0x19c
je 0x620761
test byte [ebx + 0x12], 2
jne 0x620707
mov eax, dword [ebx + 0x44]
mov edx, dword [ebx + 0x40]
test eax, eax
jl 0x620571
jg 0x620563
test edx, edx
jb 0x620571
cmp dword [ebp - 0x4c], 0
jg 0x620585
jl 0x620571
cmp dword [ebp - 0x50], 0
jae 0x620585
cmp dword [ebx + 0x50], 0
je 0x620635
cmp dword [ebp - 0x38], 0
je 0x620635
cmp edx, dword [ebp - 0x50]
jne 0x620635
cmp eax, dword [ebp - 0x4c]
jne 0x620635
mov eax, dword [ebx + 0x50]
mov edx, dword [ebp - 0x38]
test eax, eax
jne 0x6205ff
test edx, edx
jne 0x620603
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x620655
test ecx, 0x200
je 0x620655
cmp dword [0x43e774], esi
jl 0x620655
push dword [ebp - 0x64]
mov edx, dword [ebx + 0x60]
mov ecx, dword [0x444e2c]
call fcn.006131ec
add esp, 4
test eax, eax
je 0x620635
push dword [ebp - 0x64]
mov edx, dword [ebx + 0x60]
mov ecx, dword [0x444e30]
call fcn.006131ec
add esp, 4
test eax, eax
jne 0x620652
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x620655
test edx, edx
je 0x620643
test eax, eax
je 0x620635
mov ecx, edx
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x62062c
test dl, dl
je 0x620628
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x62062c
add eax, 2
add ecx, 2
test dl, dl
jne 0x62060c
xor eax, eax
jmp 0x620631
sbb eax, eax
or eax, 1
test eax, eax
je 0x62063c
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x620655
mov eax, dword [ebx + 0x50]
movzx ecx, word [ebx + 0x54]
test eax, eax
jne 0x6205a5
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x620655
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x58]
test ecx, ecx
jns 0x62067e
cmp dword [ebp - 0x8c], 0
jne 0x62067e
cmp dword [ebp - 0x74], 0
je 0x62067e
cmp dword [ebp - 0x68], 0
jge 0x62067e
cmp dword [ebp - 0x78], 0
jge 0x62067e
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x6206f1
test eax, eax
jne 0x6206f1
mov eax, dword [ebx + 0x20]
test eax, eax
js 0x6206a7
test ecx, ecx
js 0x6206a7
cmp eax, ecx
je 0x6206a7
push 0x4417f8
push 2
call fcn.006060bc
mov eax, esi
add esp, 8
mov dword [ebp - 0x2c], eax
jmp 0x6206f1
cmp dword [ebx + 0x44], 0
jl 0x6206c3
jg 0x6206b5
cmp dword [ebx + 0x40], 0
jb 0x6206c3
cmp dword [ebp - 0x4c], 0
jg 0x6206cf
jl 0x6206c3
cmp dword [ebp - 0x50], 0
jae 0x6206cf
cmp dword [ebx + 0x50], 0
je 0x6206ee
cmp dword [ebp - 0x38], 0
je 0x6206ee
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0xc], 2
jne 0x6206ee
push 0x441810
push 2
call fcn.006060bc
mov eax, dword [edi + 0x4c]
add esp, 8
add dword [eax + 0x1c], 0xa
mov eax, dword [ebp - 0x2c]
test byte [ebx + 0x12], 2
je 0x62081b
mov dword [ebp - 0x2c], 0
jmp 0x6208ef
cmp edx, 0x1a0
jne 0x6206f1
push 0x441838
push 1
call fcn.006060bc
mov ecx, 0x441864
call fcn.0060623c
push eax
push 0x1f6
mov edx, esi
mov ecx, edi
call fcn.0061d0cc
mov ecx, 0x441890
call fcn.0060623c
push eax
mov edx, 0x1f6
mov ecx, ebx
call fcn.0061b53c
add esp, 0x14
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x50]
test eax, eax
je 0x620798
mov ecx, dword [ebp - 0x38]
test ecx, ecx
je 0x620798
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x62078f
test dl, dl
je 0x62078b
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x62078f
add eax, 2
add ecx, 2
test dl, dl
jne 0x62076f
xor eax, eax
jmp 0x620794
sbb eax, eax
or eax, 1
test eax, eax
jne 0x6207d4
mov ecx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
test ecx, ecx
jl 0x6206ee
jg 0x6207b0
test eax, eax
jb 0x6206ee
cmp dword [ebp - 0x4c], 0
jl 0x6206ee
mov edx, dword [ebp - 0x50]
jg 0x6207c7
test edx, edx
jb 0x6206ee
cmp eax, edx
jne 0x6207d4
cmp ecx, dword [ebp - 0x4c]
je 0x6206ee
cmp dword [0x443bcc], 0
mov eax, 0x43fecc
jne 0x6207e5
mov eax, dword [ebx + 0xc]
cmp dword [ebp - 0x30], 0x130
mov ecx, 0x4417c4
push eax
mov eax, 0x4417b8
cmovne eax, ecx
push eax
push 0x4417d8
push 1
call fcn.006060bc
mov eax, dword [ebp - 0x54]
add esp, 0x10
or word [ebx + 0x12], ax
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x6206f1
test eax, eax
je 0x6208ef
mov eax, dword [ebx + 0x50]
mov ecx, 0x4418c4
test eax, eax
mov edx, 0x43fecc
cmovne ecx, eax
cmp dword [0x443bcc], 0
jne 0x620841
mov edx, dword [ebx + 0xc]
cmp dword [ebp - 0x38], 0
mov eax, 0x4418bc
cmovne eax, dword [ebp - 0x38]
push eax
push dword [ebp - 0x50]
movzx eax, word [ebx + 0x14]
push dword [ebp - 0x58]
push dword [ebp - 0x30]
push ecx
push dword [ebx + 0x40]
push dword [ebx + 0x20]
push eax
push edx
push 0x4418cc
push 0x20
call fcn.006060bc
add esp, 0x2c
mov ecx, ebx
call fcn.0061b3ec
movzx eax, word [ebx + 0x10]
mov edx, dword [ebx + 0xc]
push ecx
push dword [ebx + 4]
push ecx
movzx ecx, byte [ebx + 2]
push 1
push eax
call fcn.0061a7ec
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne 0x6208d7
push 0x441900
push 1
call fcn.006060bc
mov ecx, 0x44191c
call fcn.0060623c
push eax
push 0x1f4
mov edx, esi
mov ecx, edi
call fcn.0061d0cc
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
cmp word [ebx + 0x10], 0
jbe 0x6208ef
mov eax, dword [ebx + 0xc]
cmp byte [eax], 0x2f
jne 0x6208ef
mov eax, 0x100
or word [ebx + 0x12], ax
cmp dword [ebp - 0x38], 0
jne 0x62090b
cmp dword [ebp - 0x4c], 0
jl 0x6209af
jg 0x62090b
cmp dword [ebp - 0x50], 0
jb 0x6209af
mov ecx, dword [0x440088]
mov eax, ecx
neg eax
sbb eax, eax
and eax, 8
or eax, 0x13
test dword [ebp - 0x18], eax
jne 0x6209af
mov eax, dword [ebp - 0x14]
test eax, eax
js 0x620932
cmp eax, 2
jle 0x6209af
test ecx, ecx
je 0x620942
mov eax, dword [ebp - 0x10]
test eax, eax
js 0x620942
cmp eax, 5
jle 0x6209af
mov ecx, dword [ebp - 0x44]
cmp dword [ecx + 0x44], 0
jl 0x620978
jg 0x620953
cmp dword [ecx + 0x40], 0
jb 0x620978
mov edx, dword [ecx + 0x3c]
mov eax, dword [ecx + 0x38]
test edx, edx
jl 0x620978
jg 0x620963
test eax, eax
jb 0x620978
sub eax, dword [ecx + 0x40]
sbb edx, dword [ecx + 0x44]
mov dword [ebp - 0x8c], edx
js 0x6209af
jg 0x620978
cmp eax, 1
jbe 0x6209af
cmp dword [ebp - 0x2c], 0
je 0x6209a4
mov edx, dword [ecx + 0x28]
sub edx, dword [ebp - 0x5c]
mov eax, dword [ecx + 0x2c]
sbb eax, dword [ebp - 0x80]
mov dword [ebp - 0x8c], eax
js 0x6209af
jg 0x620999
cmp edx, 5
jbe 0x6209af
mov eax, dword [ebp - 0x54]
test word [ecx + 0x12], ax
je 0x6209b6
jmp 0x6209b2
mov eax, 0xfbff
and word [ebx + 0x12], ax
jmp 0x6209b6
mov eax, dword [ebp - 0x54]
or word [ebx + 0x12], ax
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x80]
cdq
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 0x18]
or word [ebx + 0x54], ax
mov eax, dword [ebp - 0x14]
mov dword [ebx + 0x58], eax
mov eax, dword [ebp - 0x10]
mov dword [ebx + 0x5c], eax
mov eax, 0xff7f
and word [ebx + 0x12], ax
mov dword [ebx + 0x34], edx
test ecx, ecx
jl 0x6209f2
mov eax, dword [ebp - 0x5c]
jg 0x6209ec
test eax, eax
jb 0x6209f2
mov dword [ebx + 0x28], eax
mov dword [ebx + 0x2c], ecx
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
jl 0x620a08
mov eax, dword [ebp - 0x50]
jg 0x620a02
test eax, eax
jb 0x620a08
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x44], ecx
mov eax, dword [ebp - 0x84]
test eax, eax
jl 0x620a24
mov ecx, dword [ebp - 0x88]
jg 0x620a1e
test ecx, ecx
jb 0x620a24
mov dword [ebx + 0x38], ecx
mov dword [ebx + 0x3c], eax
cmp dword [ebx + 0x50], 0
jne 0x620a32
mov eax, dword [ebp - 0x38]
mov dword [ebx + 0x50], eax
jmp 0x620a3d
push dword [ebp - 0x38]
call fcn.00625408
add esp, 4
mov eax, dword [ebp - 0x30]
add eax, 0xffffff38
cmp eax, 0xd4
ja 0x620aaf
movzx eax, byte [eax + 0x41bff4]
jmp dword [eax*4 + 0x41bfe8]
mov ecx, dword [ebx + 0x1c]
test ecx, ecx
je 0x620abb
call fcn.006063cc
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x48]
mov word [ebx + 0x14], ax
call fcn.0060639c
mov dword [ebx + 0x1c], eax
mov ecx, ebx
call fcn.006130cc
mov eax, dword [0x443b94]
mov ecx, dword [ebp - 0x7c]
add eax, 0xa
push eax
test ecx, ecx
jne 0x620b04
cmp dword [ebp - 0x3c], esi
mov ecx, 0x441940
mov eax, 0x44193c
cmovne eax, ecx
push eax
push 0x441944
call fcn.0060645c
add esp, 0xc
jmp 0x620b26
cmp dword [ebp - 0x3c], esi
mov edx, 0x441950
mov eax, 0x44194c
cmovne eax, edx
push eax
lea eax, [ecx + 0xa]
push eax
push 0x441954
call fcn.0060645c
add esp, 0x10
mov dword [ebp - 0x3c], eax
test eax, eax
jne 0x620b3e
push 0x441960
push 1
call fcn.006060bc
add esp, 8
jmp 0x620b50
mov ecx, dword [ebx + 0x64]
test ecx, ecx
je 0x620b4d
call fcn.006063cc
mov eax, dword [ebp - 0x3c]
mov dword [ebx + 0x64], eax
test byte [ebx + 0x12], 2
je 0x620b68
push dword [ebp - 0x64]
mov edx, dword [ebp - 0x58]
mov ecx, ebx
call fcn.0061acac
add esp, 4
jmp 0x620b7c
cmp dword [ebx + 0x20], 0
jge 0x620b74
mov eax, dword [ebp - 0x58]
mov dword [ebx + 0x20], eax
mov ecx, dword [ebp - 0x64]
call fcn.006063cc
cmp dword [ebp - 0x2c], 0
je 0x620b8a
mov ecx, dword [ebp - 0x44]
call fcn.0061b60c
mov eax, dword [ebp - 0x44]
mov ecx, 0xfdff
cmp ebx, eax
je 0x620c31
test byte [ebx + 0x12], 4
je 0x620bc8
mov ecx, ebx
call fcn.0061aacc
push 0
mov edx, esi
mov ecx, edi
call fcn.0061eaac
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
mov ecx, 0xffdf
and word [eax + 0x12], cx
mov ecx, 0x804
or word [ebx + 0x12], cx
mov ecx, dword [ebp - 0x40]
mov dword [ecx + 0x38], ebx
mov ecx, eax
call fcn.0061b66c
mov edx, dword [ebp - 0x40]
mov eax, 0xf7ff
mov ecx, 0xfffb
mov dword [edx + 0x38], 0
and word [ebx + 0x12], ax
mov eax, dword [ebp - 0x44]
and word [eax + 0x12], cx
cmp dword [edx + 8], eax
jne 0x620c23
mov ecx, dword [edx + 0x5c]
test ecx, ecx
je 0x620c19
mov dword [ecx + 0x5c], 0
mov dword [edx + 0x5c], 0
mov dword [edx + 8], ebx
mov ecx, eax
call fcn.0061aafc
mov eax, ebx
mov dword [ebp - 0x44], eax
jmp 0x620c35
and word [ebx + 0x12], cx
movzx ecx, word [eax + 0x12]
test cl, 0x20
je 0x620c4f
and ecx, 0xffdf
mov word [eax + 0x12], cx
mov ecx, eax
call fcn.0061b66c
cmp dword [ebp - 0x74], 0
jne 0x620c78
mov edx, dword [ebp - 0x34]
mov ecx, edi
push edx
xor edx, edx
call fcn.0061eaac
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x5c], 0
je 0x620ba7
cmp dword [ebp - 0x30], 0x19c
je 0x620ba7
test byte [eax], 1
je 0x620cbd
cmp dword [eax + 0xc], esi
je 0x620cbd
cmp dword [edi + 0x2c], 0
jne 0x620cbd
cmp dword [ebp - 0x60], 0
jge 0x620cbd
push 0x441978
push 1
call fcn.006060bc
mov eax, dword [ebp - 0x40]
add esp, 8
and dword [eax], 0xfffffffe
mov ecx, dword [ebp - 0x68]
test ecx, ecx
jle 0x620cc9
mov dword [edi + 0x10], ecx
jmp 0x620cd0
mov dword [edi + 0x10], 0
mov ecx, dword [ebp - 0x78]
test ecx, ecx
js 0x620cda
mov dword [eax + 0x14], ecx
push dword [edi + 0x10]
mov eax, dword [ebp - 0x44]
push eax
push edi
push 0x4419a4
push 0x20000
call fcn.006060bc
mov edx, dword [ebp - 0x34]
add esp, 0x14
cmp dword [edi + 0xc], edx
jle 0x620e0a
mov ecx, edi
call fcn.00621b2c
test eax, eax
je 0x620e11
jns 0x620d8c
cmp eax, 0xfffffffe
jne 0x620d51
push 0x4419c0
push 1
call fcn.006060bc
mov ecx, 0x4419dc
call fcn.0060623c
push eax
push 0x1f6
mov edx, esi
mov ecx, edi
call fcn.0061d0cc
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
push 0x4419f8
push 1
call fcn.006060bc
mov ecx, 0x441a1c
call fcn.0060623c
push eax
push 0x1f4
mov edx, esi
mov ecx, edi
call fcn.0061d0cc
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x30], 0xce
je 0x620dae
mov ebx, dword [ebp - 0x44]
mov eax, dword [ebx + 0x20]
test eax, eax
jns 0x620dcf
mov eax, dword [ebx + 0x68]
mov dword [ebx + 0x20], eax
mov eax, 0xfdff
and word [ebx + 0x12], ax
push 0
xor edx, edx
mov ecx, edi
call fcn.0061eaac
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
cmp eax, dword [ebx + 0x68]
je 0x620dae
mov ecx, 0x441a3c
call fcn.0060623c
push eax
push 0x1f4
mov edx, esi
mov ecx, edi
call fcn.0061d0cc
add esp, 8
mov dword [ebx + 0x20], 0xffffffff
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
mov dword [edi + 0xc], 0
cmp dword [0x443bfc], 0
mov edx, dword [ebp - 0x30]
je 0x620ffb
cmp edx, 0xc8
jne 0x620ffb
mov ecx, dword [ebx + 0x60]
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0
push eax
movzx eax, word [ecx + 8]
lea edx, [ecx + 0xa]
mov ecx, dword [0x444e2c]
push eax
mov dword [ebp - 0x34], 0
call fcn.006161ac
add esp, 0xc
test eax, eax
jle 0x620ff8
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x3c]
sub ecx, eax
add eax, 0xa
mov dword [ebp - 0x6c], ecx
add eax, dword [ebx + 0x60]
mov edx, ecx
push 9
push 0x441a58
mov ecx, eax
mov dword [ebp - 0x34], eax
call fcn.0061fd6c
add esp, 8
test eax, eax
jne 0x620eac
mov edx, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x34]
push 0x15
push 0x441a70
call fcn.0061fd6c
add esp, 8
test eax, eax
je 0x620ff8
movzx eax, word [ebx + 0x10]
test ax, ax
je 0x620ff8
mov esi, eax
mov dword [ebp - 0x3c], 0
lea eax, [esi + 1]
push eax
call fcn.00625480
add esp, 4
mov dword [ebp - 0x34], eax
push esi
push dword [ebx + 0xc]
push eax
call fcn.006284bc
mov eax, dword [ebp - 0x34]
add esp, 0xc
movzx ecx, word [ebx + 0x10]
push 0x3f
push eax
mov byte [ecx + eax], 0
call fcn.00626c7c
add esp, 8
test eax, eax
je 0x620efb
mov byte [eax], 0
push 0x2e
push dword [ebp - 0x34]
call fcn.006285ec
add esp, 8
mov dword [ebp - 0x6c], eax
test eax, eax
je 0x620f97
mov dword [ebp - 0x28], 0x441a68
xor esi, esi
mov dword [ebp - 0x24], 0x441a90
mov dword [ebp - 0x20], 0x441aa0
mov dword [ebp - 0x1c], 0x441ab0
mov dword [ebp - 0x18], 0x441ac0
mov dword [ebp - 0x14], 0x441ad0
mov dword [ebp - 0x10], 0x441ae0
mov dword [ebp - 0xc], 0x441af0
mov dword [ebp - 8], 0x441b00
mov ecx, dword [ebp + esi*4 - 0x28]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x620f7c
test dl, dl
je 0x620f78
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x620f7c
add eax, 2
add ecx, 2
test dl, dl
jne 0x620f5c
xor eax, eax
jmp 0x620f81
sbb eax, eax
or eax, 1
test eax, eax
je 0x620f90
mov eax, dword [ebp - 0x6c]
inc esi
cmp esi, 9
jb 0x620f54
jmp 0x620f97
mov dword [ebp - 0x3c], 1
push dword [ebp - 0x34]
call fcn.00625408
add esp, 4
cmp dword [ebp - 0x3c], 0
jne 0x620ff3
movzx esi, word [ebx + 0x10]
lea eax, [esi + 1]
push eax
call fcn.00625480
add esp, 4
mov edi, eax
push esi
push dword [ebx + 0xc]
push edi
call fcn.006284bc
movzx ecx, word [ebx + 0x10]
add esp, 0xc
push edi
push 0x441b08
mov byte [ecx + edi], 0
call fcn.0062759f
push 0
call fcn.0062744d
add esp, 0xc
push edi
call fcn.00625408
mov edi, dword [ebp - 0xa0]
add esp, 4
mov esi, 1
mov edx, dword [ebp - 0x30]
mov ebx, dword [ebp - 0xa4]
test ebx, ebx
je 0x621089
cmp dword [edi + 0x2c], 1
je 0x62104e
mov ecx, dword [ebp - 0x44]
mov eax, dword [ecx + 0x20]
test eax, eax
js 0x62101e
cmp dword [edi + 0x10], eax
jl 0x62104e
cmp edx, 0xce
je 0x620ba7
test ebx, ebx
jle 0x620ba7
test eax, eax
jns 0x620ba7
mov eax, dword [ecx + 0x68]
mov dword [ecx + 0x20], eax
mov eax, 0xfdff
and word [ecx + 0x12], ax
jmp 0x620ba7
push 0x441b28
push 1
call fcn.006060bc
mov ecx, 0x441b44
call fcn.0060623c
push eax
push 0x1f6
mov edx, esi
mov ecx, edi
call fcn.0061d0cc
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006253f9
mov esp, ebp
pop ebp
ret
mov edx, esi
mov ecx, edi
call fcn.0062141c
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.006253f9
mov esp, ebp
pop ebp
ret