Function at 0x689c8c
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 0x689d15
cmp ecx, dword [0x443c6c]
jne 0x689ce2
mov eax, dword [ecx + 0xc]
mov dword [0x443c6c], eax
cmp ecx, dword [0x443c70]
jne 0x689cf2
mov eax, dword [ecx + 8]
mov dword [0x443c70], eax
mov edx, dword [ecx + 0xc]
test edx, edx
je 0x689cff
mov eax, dword [ecx + 8]
mov dword [edx + 8], eax
mov edx, dword [ecx + 8]
test edx, edx
je 0x689d0c
mov eax, dword [ecx + 0xc]
mov dword [edx + 0xc], eax
push ecx
call fcn.0068f208
add esp, 4
mov dword [edi + 0x28], 0
test byte [esi], 4
je 0x689d3e
mov eax, dword [edi + 0x4c]
push dword [eax + 4]
push dword [eax]
push 0x4414b4
push 0x100
call fcn.0066febc
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.0067de9c
add esp, 8
mov dword [ebp - 0x34], eax
test eax, eax
jg 0x689db6
push 0x4414c0
push 1
call fcn.0066febc
mov edx, 0x4414e4
add esp, 8
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x689d72
sub edx, ecx
js 0x689d89
mov ecx, 0x4414e4
call fcn.0066ff0c
jmp 0x689d8b
xor eax, eax
push eax
push 0x1f6
mov edx, 1
mov ecx, edi
call fcn.00686ecc
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
push 0x441508
push 0x200
call fcn.0066febc
push ebx
push edi
push 0x441518
push 0x200
call fcn.0066febc
mov ecx, dword [ebp - 0x3c]
add esp, 0x18
test ecx, ecx
je 0x689e48
cmp ecx, 1
je 0x689e48
push 0x44152c
push 1
call fcn.0066febc
mov edx, 0x44154c
add esp, 8
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x689dfc
sub edx, ecx
js 0x689e13
mov ecx, 0x44154c
call fcn.0066ff0c
jmp 0x689e15
xor eax, eax
push eax
push 0x1f6
mov edx, 1
mov ecx, edi
call fcn.00686ecc
mov ecx, dword [ebp - 0x48]
add esp, 8
call fcn.006701cc
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
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 0x689e68
mov ecx, dword [ebx + 0xc]
call fcn.0066ff0c
mov esi, eax
jmp 0x689e6a
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.0067e57c
add esp, 0x58
mov dword [ebp - 0x34], eax
test eax, eax
jns 0x689f0c
push 0x441568
push 1
call fcn.0066febc
add esp, 8
mov ecx, esi
call fcn.006701cc
mov ecx, dword [ebp - 0x48]
call fcn.006701cc
mov edx, 0x441588
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x689eee
sub edx, ecx
js 0x689d89
mov ecx, 0x441588
call fcn.0066ff0c
jmp 0x689d8b
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0x80], edx
test edx, edx
jg 0x689f2d
jl 0x689f22
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x5c], eax
test eax, eax
jae 0x689f33
mov eax, dword [0x444e38]
cdq
mov dword [ebp - 0x80], edx
jmp 0x689f30
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x30]
cmp ecx, 0x64
jne 0x689f95
mov ecx, esi
call fcn.006701cc
mov ecx, dword [ebp - 0x48]
call fcn.006701cc
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax + 8]
call fcn.0068546c
mov edx, dword [ebp - 0x34]
sub dword [edi + 0xc], edx
mov eax, dword [edi + 0xc]
test eax, eax
jle 0x689f73
mov ecx, dword [edi + 8]
push eax
lea eax, [ecx + edx]
push eax
push ecx
call fcn.0068fb8c
add esp, 0xc
mov edx, 1
mov ecx, edi
call fcn.00688e6c
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
cmp ecx, 0x65
jne 0x689fd5
mov edx, 0x4415a8
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x689fa2
sub edx, ecx
js 0x689fb9
mov ecx, 0x4415a8
call fcn.0066ff0c
jmp 0x689fbb
xor eax, eax
push eax
push 0x1f5
mov edx, 1
mov ecx, edi
call fcn.00686ecc
add esp, 8
jmp 0x68a29b
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x68a00e
mov edx, eax
call fcn.006802ec
test eax, eax
jne 0x68a00b
mov ecx, 0x4415c0
call fcn.0067003c
push eax
push 0x1f8
mov edx, 1
mov ecx, edi
call fcn.00686ecc
add esp, 8
jmp 0x68a29b
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x58], eax
cmp ecx, 0xce
jne 0x68a07c
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x68], edx
cmp edx, 0xffffffff
je 0x68a066
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x78], eax
cmp eax, 0xffffffff
je 0x68a066
cmp dword [ebp - 0x60], 0
jl 0x68a0de
sub eax, edx
cmp dword [ebp - 0x60], eax
je 0x68a0de
push 0x441614
push 1
call fcn.0066febc
mov ecx, 0x441634
jmp 0x68a281
push 0x4415d4
push 1
call fcn.0066febc
mov ecx, 0x4415f4
jmp 0x68a281
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0x78], edx
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x68], edx
cmp ecx, 0x190
jge 0x68a0c9
test edx, edx
jns 0x68a0a7
cmp dword [ebp - 0x98], 0
jge 0x68a0a7
test eax, eax
js 0x68a0c9
push 0x441654
push 2
call fcn.0066febc
mov ecx, dword [ebp - 0x30]
add esp, 8
mov dword [ebp - 0x68], 0xffffffff
mov dword [ebp - 0x78], 0xffffffff
jmp 0x68a0de
cmp ecx, 0x130
je 0x68a0de
cmp ecx, 0x19c
cmovne eax, dword [ebp - 0x60]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x8c]
test eax, eax
je 0x68a103
cmp eax, 1
je 0x68a103
push 0x441674
push 1
call fcn.0066febc
mov ecx, 0x441694
jmp 0x68a281
cmp ecx, 0x130
jne 0x68a245
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0xc], 2
je 0x68a12e
push 0x4416b4
push 1
call fcn.0066febc
mov ecx, 0x4416e0
jmp 0x68a281
cmp dword [ebx + 0x50], 0
je 0x68a149
cmp dword [ebp - 0x38], 0
jne 0x68a149
push 0x44170c
push 2
call fcn.0066febc
add esp, 8
mov ecx, esi
call fcn.006701cc
mov eax, dword [ebp - 0x30]
cmp eax, 0xc8
je 0x68a16f
cmp eax, 0xce
je 0x68a16f
cmp eax, 0x130
je 0x68a16f
cmp eax, 0x19c
jne 0x68a1d0
mov ecx, dword [ebp - 0x18]
test cl, 0x12
jne 0x68a1ae
cmp dword [ebp - 0x14], 0
je 0x68a1ae
cmp dword [0x440088], 0
je 0x68a18c
cmp dword [ebp - 0x10], 0
je 0x68a1ae
mov eax, dword [ebp - 0x84]
test eax, eax
jl 0x68a1d0
mov edx, dword [ebp - 0x88]
jg 0x68a1a2
test edx, edx
jb 0x68a1d0
cmp eax, dword [ebx + 0x34]
jg 0x68a1d0
jl 0x68a1ae
cmp edx, dword [ebx + 0x30]
ja 0x68a1d0
cmp dword [0x443bcc], 0
mov eax, 0x43fecc
jne 0x68a1bf
mov eax, dword [ebx + 0xc]
push ecx
push eax
push 0x44179c
push 0x10
call fcn.0066febc
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 0x68a2f3
cmp edx, 0xc8
jl 0x68a2f3
cmp edx, 0xcc
je 0x68a2f3
cmp edx, 0x130
je 0x68a2f3
mov eax, dword [ebp - 0x8c]
test eax, eax
jne 0x68a2ea
xor ecx, ecx
cmp dword [ebp - 0x60], ecx
setne cl
mov dword [ebp - 0x74], ecx
jmp 0x68a300
cmp ecx, 0x19c
jne 0x68a149
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0xc], 2
jne 0x68a270
cmp dword [ebx + 0x50], 0
jne 0x68a149
mov eax, dword [ebx + 0x40]
or eax, dword [ebx + 0x44]
jne 0x68a149
push 0x441730
push 1
call fcn.0066febc
mov ecx, 0x441768
call fcn.0067003c
push eax
push 0x1f6
mov edx, 1
mov ecx, edi
call fcn.00686ecc
add esp, 0x10
mov ecx, esi
call fcn.006701cc
mov ecx, dword [ebp - 0x48]
call fcn.006701cc
mov ecx, dword [ebp - 0x64]
test ecx, ecx
je 0x68a2b6
call fcn.006701cc
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x68a2c6
push eax
call fcn.0068f208
add esp, 4
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x68a2d4
mov ecx, eax
call fcn.006701cc
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x74], 1
jmp 0x68a300
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 0x68a561
cmp edx, 0x19c
je 0x68a561
test byte [ebx + 0x12], 2
jne 0x68a507
mov eax, dword [ebx + 0x44]
mov edx, dword [ebx + 0x40]
test eax, eax
jl 0x68a371
jg 0x68a363
test edx, edx
jb 0x68a371
cmp dword [ebp - 0x4c], 0
jg 0x68a385
jl 0x68a371
cmp dword [ebp - 0x50], 0
jae 0x68a385
cmp dword [ebx + 0x50], 0
je 0x68a435
cmp dword [ebp - 0x38], 0
je 0x68a435
cmp edx, dword [ebp - 0x50]
jne 0x68a435
cmp eax, dword [ebp - 0x4c]
jne 0x68a435
mov eax, dword [ebx + 0x50]
mov edx, dword [ebp - 0x38]
test eax, eax
jne 0x68a3ff
test edx, edx
jne 0x68a403
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x68a455
test ecx, 0x200
je 0x68a455
cmp dword [0x43e774], esi
jl 0x68a455
push dword [ebp - 0x64]
mov edx, dword [ebx + 0x60]
mov ecx, dword [0x444e2c]
call fcn.0067cfec
add esp, 4
test eax, eax
je 0x68a435
push dword [ebp - 0x64]
mov edx, dword [ebx + 0x60]
mov ecx, dword [0x444e30]
call fcn.0067cfec
add esp, 4
test eax, eax
jne 0x68a452
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x68a455
test edx, edx
je 0x68a443
test eax, eax
je 0x68a435
mov ecx, edx
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x68a42c
test dl, dl
je 0x68a428
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x68a42c
add eax, 2
add ecx, 2
test dl, dl
jne 0x68a40c
xor eax, eax
jmp 0x68a431
sbb eax, eax
or eax, 1
test eax, eax
je 0x68a43c
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x68a455
mov eax, dword [ebx + 0x50]
movzx ecx, word [ebx + 0x54]
test eax, eax
jne 0x68a3a5
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x68a455
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x58]
test ecx, ecx
jns 0x68a47e
cmp dword [ebp - 0x8c], 0
jne 0x68a47e
cmp dword [ebp - 0x74], 0
je 0x68a47e
cmp dword [ebp - 0x68], 0
jge 0x68a47e
cmp dword [ebp - 0x78], 0
jge 0x68a47e
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x68a4f1
test eax, eax
jne 0x68a4f1
mov eax, dword [ebx + 0x20]
test eax, eax
js 0x68a4a7
test ecx, ecx
js 0x68a4a7
cmp eax, ecx
je 0x68a4a7
push 0x4417f8
push 2
call fcn.0066febc
mov eax, esi
add esp, 8
mov dword [ebp - 0x2c], eax
jmp 0x68a4f1
cmp dword [ebx + 0x44], 0
jl 0x68a4c3
jg 0x68a4b5
cmp dword [ebx + 0x40], 0
jb 0x68a4c3
cmp dword [ebp - 0x4c], 0
jg 0x68a4cf
jl 0x68a4c3
cmp dword [ebp - 0x50], 0
jae 0x68a4cf
cmp dword [ebx + 0x50], 0
je 0x68a4ee
cmp dword [ebp - 0x38], 0
je 0x68a4ee
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0xc], 2
jne 0x68a4ee
push 0x441810
push 2
call fcn.0066febc
mov eax, dword [edi + 0x4c]
add esp, 8
add dword [eax + 0x1c], 0xa
mov eax, dword [ebp - 0x2c]
test byte [ebx + 0x12], 2
je 0x68a61b
mov dword [ebp - 0x2c], 0
jmp 0x68a6ef
cmp edx, 0x1a0
jne 0x68a4f1
push 0x441838
push 1
call fcn.0066febc
mov ecx, 0x441864
call fcn.0067003c
push eax
push 0x1f6
mov edx, esi
mov ecx, edi
call fcn.00686ecc
mov ecx, fcn.00441890
call fcn.0067003c
push eax
mov edx, 0x1f6
mov ecx, ebx
call fcn.0068533c
add esp, 0x14
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x50]
test eax, eax
je 0x68a598
mov ecx, dword [ebp - 0x38]
test ecx, ecx
je 0x68a598
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x68a58f
test dl, dl
je 0x68a58b
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x68a58f
add eax, 2
add ecx, 2
test dl, dl
jne 0x68a56f
xor eax, eax
jmp 0x68a594
sbb eax, eax
or eax, 1
test eax, eax
jne 0x68a5d4
mov ecx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
test ecx, ecx
jl 0x68a4ee
jg 0x68a5b0
test eax, eax
jb 0x68a4ee
cmp dword [ebp - 0x4c], 0
jl 0x68a4ee
mov edx, dword [ebp - 0x50]
jg 0x68a5c7
test edx, edx
jb 0x68a4ee
cmp eax, edx
jne 0x68a5d4
cmp ecx, dword [ebp - 0x4c]
je 0x68a4ee
cmp dword [0x443bcc], 0
mov eax, 0x43fecc
jne 0x68a5e5
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.0066febc
mov eax, dword [ebp - 0x54]
add esp, 0x10
or word [ebx + 0x12], ax
mov eax, esi
mov dword [ebp - 0x2c], eax
jmp 0x68a4f1
test eax, eax
je 0x68a6ef
mov eax, dword [ebx + 0x50]
mov ecx, 0x4418c4
test eax, eax
mov edx, 0x43fecc
cmovne ecx, eax
cmp dword [0x443bcc], 0
jne 0x68a641
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.0066febc
add esp, 0x2c
mov ecx, ebx
call fcn.006851ec
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.006845ec
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne 0x68a6d7
push 0x441900
push 1
call fcn.0066febc
mov ecx, 0x44191c
call fcn.0067003c
push eax
push 0x1f4
mov edx, esi
mov ecx, edi
call fcn.00686ecc
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
cmp word [ebx + 0x10], 0
jbe 0x68a6ef
mov eax, dword [ebx + 0xc]
cmp byte [eax], 0x2f
jne 0x68a6ef
mov eax, 0x100
or word [ebx + 0x12], ax
cmp dword [ebp - 0x38], 0
jne 0x68a70b
cmp dword [ebp - 0x4c], 0
jl 0x68a7af
jg 0x68a70b
cmp dword [ebp - 0x50], 0
jb 0x68a7af
mov ecx, dword [0x440088]
mov eax, ecx
neg eax
sbb eax, eax
and eax, 8
or eax, 0x13
test dword [ebp - 0x18], eax
jne 0x68a7af
mov eax, dword [ebp - 0x14]
test eax, eax
js 0x68a732
cmp eax, 2
jle 0x68a7af
test ecx, ecx
je 0x68a742
mov eax, dword [ebp - 0x10]
test eax, eax
js 0x68a742
cmp eax, 5
jle 0x68a7af
mov ecx, dword [ebp - 0x44]
cmp dword [ecx + 0x44], 0
jl 0x68a778
jg 0x68a753
cmp dword [ecx + 0x40], 0
jb 0x68a778
mov edx, dword [ecx + 0x3c]
mov eax, dword [ecx + 0x38]
test edx, edx
jl 0x68a778
jg 0x68a763
test eax, eax
jb 0x68a778
sub eax, dword [ecx + 0x40]
sbb edx, dword [ecx + 0x44]
mov dword [ebp - 0x8c], edx
js 0x68a7af
jg 0x68a778
cmp eax, 1
jbe 0x68a7af
cmp dword [ebp - 0x2c], 0
je 0x68a7a4
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 0x68a7af
jg 0x68a799
cmp edx, 5
jbe 0x68a7af
mov eax, dword [ebp - 0x54]
test word [ecx + 0x12], ax
je 0x68a7b6
jmp 0x68a7b2
mov eax, 0xfbff
and word [ebx + 0x12], ax
jmp 0x68a7b6
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 0x68a7f2
mov eax, dword [ebp - 0x5c]
jg 0x68a7ec
test eax, eax
jb 0x68a7f2
mov dword [ebx + 0x28], eax
mov dword [ebx + 0x2c], ecx
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
jl 0x68a808
mov eax, dword [ebp - 0x50]
jg 0x68a802
test eax, eax
jb 0x68a808
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x44], ecx
mov eax, dword [ebp - 0x84]
test eax, eax
jl 0x68a824
mov ecx, dword [ebp - 0x88]
jg 0x68a81e
test ecx, ecx
jb 0x68a824
mov dword [ebx + 0x38], ecx
mov dword [ebx + 0x3c], eax
cmp dword [ebx + 0x50], 0
jne 0x68a832
mov eax, dword [ebp - 0x38]
mov dword [ebx + 0x50], eax
jmp 0x68a83d
push dword [ebp - 0x38]
call fcn.0068f208
add esp, 4
mov eax, dword [ebp - 0x30]
add eax, 0xffffff38
cmp eax, 0xd4
ja 0x68a8af
movzx eax, byte [eax + 0x41bff4]
jmp dword [eax*4 + 0x41bfe8]
mov ecx, dword [ebx + 0x1c]
test ecx, ecx
je 0x68a8bb
call fcn.006701cc
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x48]
mov word [ebx + 0x14], ax
call fcn.0067019c
mov dword [ebx + 0x1c], eax
mov ecx, ebx
call fcn.0067cecc
mov eax, dword [0x443b94]
mov ecx, dword [ebp - 0x7c]
add eax, 0xa
push eax
test ecx, ecx
jne 0x68a904
cmp dword [ebp - 0x3c], esi
mov ecx, 0x441940
mov eax, 0x44193c
cmovne eax, ecx
push eax
push 0x441944
call fcn.0067025c
add esp, 0xc
jmp 0x68a926
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.0067025c
add esp, 0x10
mov dword [ebp - 0x3c], eax
test eax, eax
jne 0x68a93e
push 0x441960
push 1
call fcn.0066febc
add esp, 8
jmp 0x68a950
mov ecx, dword [ebx + 0x64]
test ecx, ecx
je 0x68a94d
call fcn.006701cc
mov eax, dword [ebp - 0x3c]
mov dword [ebx + 0x64], eax
test byte [ebx + 0x12], 2
je 0x68a968
push dword [ebp - 0x64]
mov edx, dword [ebp - 0x58]
mov ecx, ebx
call fcn.00684aac
add esp, 4
jmp 0x68a97c
cmp dword [ebx + 0x20], 0
jge 0x68a974
mov eax, dword [ebp - 0x58]
mov dword [ebx + 0x20], eax
mov ecx, dword [ebp - 0x64]
call fcn.006701cc
cmp dword [ebp - 0x2c], 0
je 0x68a98a
mov ecx, dword [ebp - 0x44]
call fcn.0068540c
mov eax, dword [ebp - 0x44]
mov ecx, 0xfdff
cmp ebx, eax
je 0x68aa31
test byte [ebx + 0x12], 4
je 0x68a9c8
mov ecx, ebx
call fcn.006848cc
push 0
mov edx, esi
mov ecx, edi
call fcn.006888ac
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
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.0068546c
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 0x68aa23
mov ecx, dword [edx + 0x5c]
test ecx, ecx
je 0x68aa19
mov dword [ecx + 0x5c], 0
mov dword [edx + 0x5c], 0
mov dword [edx + 8], ebx
mov ecx, eax
call fcn.006848fc
mov eax, ebx
mov dword [ebp - 0x44], eax
jmp 0x68aa35
and word [ebx + 0x12], cx
movzx ecx, word [eax + 0x12]
test cl, 0x20
je 0x68aa4f
and ecx, 0xffdf
mov word [eax + 0x12], cx
mov ecx, eax
call fcn.0068546c
cmp dword [ebp - 0x74], 0
jne 0x68aa78
mov edx, dword [ebp - 0x34]
mov ecx, edi
push edx
xor edx, edx
call fcn.006888ac
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x5c], 0
je 0x68a9a7
cmp dword [ebp - 0x30], 0x19c
je 0x68a9a7
test byte [eax], 1
je 0x68aabd
cmp dword [eax + 0xc], esi
je 0x68aabd
cmp dword [edi + 0x2c], 0
jne 0x68aabd
cmp dword [ebp - 0x60], 0
jge 0x68aabd
push 0x441978
push 1
call fcn.0066febc
mov eax, dword [ebp - 0x40]
add esp, 8
and dword [eax], 0xfffffffe
mov ecx, dword [ebp - 0x68]
test ecx, ecx
jle 0x68aac9
mov dword [edi + 0x10], ecx
jmp 0x68aad0
mov dword [edi + 0x10], 0
mov ecx, dword [ebp - 0x78]
test ecx, ecx
js 0x68aada
mov dword [eax + 0x14], ecx
push dword [edi + 0x10]
mov eax, dword [ebp - 0x44]
push eax
push edi
push 0x4419a4
push 0x20000
call fcn.0066febc
mov edx, dword [ebp - 0x34]
add esp, 0x14
cmp dword [edi + 0xc], edx
jle 0x68ac0a
mov ecx, edi
call fcn.0068b92c
test eax, eax
je 0x68ac11
jns 0x68ab8c
cmp eax, 0xfffffffe
jne 0x68ab51
push 0x4419c0
push 1
call fcn.0066febc
mov ecx, 0x4419dc
call fcn.0067003c
push eax
push 0x1f6
mov edx, esi
mov ecx, edi
call fcn.00686ecc
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
push 0x4419f8
push 1
call fcn.0066febc
mov ecx, 0x441a1c
call fcn.0067003c
push eax
push 0x1f4
mov edx, esi
mov ecx, edi
call fcn.00686ecc
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x30], 0xce
je 0x68abae
mov ebx, dword [ebp - 0x44]
mov eax, dword [ebx + 0x20]
test eax, eax
jns 0x68abcf
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.006888ac
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
cmp eax, dword [ebx + 0x68]
je 0x68abae
mov ecx, 0x441a3c
call fcn.0067003c
push eax
push 0x1f4
mov edx, esi
mov ecx, edi
call fcn.00686ecc
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.0068f1f9
mov esp, ebp
pop ebp
ret
mov dword [edi + 0xc], 0
cmp dword [0x443bfc], 0
mov edx, dword [ebp - 0x30]
je 0x68adfb
cmp edx, 0xc8
jne 0x68adfb
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.0067ffac
add esp, 0xc
test eax, eax
jle 0x68adf8
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.00689b6c
add esp, 8
test eax, eax
jne 0x68acac
mov edx, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x34]
push 0x15
push 0x441a70
call fcn.00689b6c
add esp, 8
test eax, eax
je 0x68adf8
movzx eax, word [ebx + 0x10]
test ax, ax
je 0x68adf8
mov esi, eax
mov dword [ebp - 0x3c], 0
lea eax, [esi + 1]
push eax
call fcn.0068f280
add esp, 4
mov dword [ebp - 0x34], eax
push esi
push dword [ebx + 0xc]
push eax
call fcn.006922bc
mov eax, dword [ebp - 0x34]
add esp, 0xc
movzx ecx, word [ebx + 0x10]
push 0x3f
push eax
mov byte [ecx + eax], 0
call fcn.00690a7c
add esp, 8
test eax, eax
je 0x68acfb
mov byte [eax], 0
push 0x2e
push dword [ebp - 0x34]
call fcn.006923ec
add esp, 8
mov dword [ebp - 0x6c], eax
test eax, eax
je 0x68ad97
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 0x68ad7c
test dl, dl
je 0x68ad78
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x68ad7c
add eax, 2
add ecx, 2
test dl, dl
jne 0x68ad5c
xor eax, eax
jmp 0x68ad81
sbb eax, eax
or eax, 1
test eax, eax
je 0x68ad90
mov eax, dword [ebp - 0x6c]
inc esi
cmp esi, 9
jb 0x68ad54
jmp 0x68ad97
mov dword [ebp - 0x3c], 1
push dword [ebp - 0x34]
call fcn.0068f208
add esp, 4
cmp dword [ebp - 0x3c], 0
jne 0x68adf3
movzx esi, word [ebx + 0x10]
lea eax, [esi + 1]
push eax
call fcn.0068f280
add esp, 4
mov edi, eax
push esi
push dword [ebx + 0xc]
push edi
call fcn.006922bc
movzx ecx, word [ebx + 0x10]
add esp, 0xc
push edi
push 0x441b08
mov byte [ecx + edi], 0
call fcn.0069139f
push 0
call fcn.0069124d
add esp, 0xc
push edi
call fcn.0068f208
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 0x68ae89
cmp dword [edi + 0x2c], 1
je 0x68ae4e
mov ecx, dword [ebp - 0x44]
mov eax, dword [ecx + 0x20]
test eax, eax
js 0x68ae1e
cmp dword [edi + 0x10], eax
jl 0x68ae4e
cmp edx, 0xce
je 0x68a9a7
test ebx, ebx
jle 0x68a9a7
test eax, eax
jns 0x68a9a7
mov eax, dword [ecx + 0x68]
mov dword [ecx + 0x20], eax
mov eax, 0xfdff
and word [ecx + 0x12], ax
jmp 0x68a9a7
push 0x441b28
push 1
call fcn.0066febc
mov ecx, 0x441b44
call fcn.0067003c
push eax
push 0x1f6
mov edx, esi
mov ecx, edi
call fcn.00686ecc
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
mov edx, esi
mov ecx, edi
call fcn.0068b21c
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret