Function at 0x43d3c0
Capabilities:
Check http status code

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b8342
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xf0
push esi
push edi
mov eax, dword [0x4ed214]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi + 0x3dd7c]
cmp eax, 0x1f4
jg 0x43e33a
je 0x43e2c3
cmp eax, 0xd2
ja case.0x43e464.701
movzx eax, byte [eax + 0x43ea38]
jmp dword [eax*4 + 0x43ea10]
movaps xmm0, xmmword [0x4dbc80]
mov dword [esi + 0xc8398], 0
movups xmmword [0x5d9188], xmm0
movups xmmword [0x5d9198], xmm0
movups xmmword [0x5d91a8], xmm0
movups xmmword [0x5d91b8], xmm0
movups xmmword [0x5d91c8], xmm0
movups xmmword [0x5d91d8], xmm0
movq qword [0x5d91e8], xmm0
movaps xmm0, xmmword [0x4dbc80]
movaps xmmword [0x5d9120], xmm0
movaps xmmword [0x5d9130], xmm0
movaps xmmword [0x5d9140], xmm0
movaps xmmword [0x5d9150], xmm0
movaps xmmword [0x5d9160], xmm0
movaps xmmword [0x5d9170], xmm0
movq qword [0x5d9180], xmm0
mov al, byte [esi + 0xc8368]
mov byte [esi + 0xc8449], al
mov al, byte [esi + 0xc8369]
mov byte [esi + 0xc8448], al
call fcn.00453340
lea ecx, [ebp - 0x54]
mov dword [0x5d90d8], 0xffffffff
call fcn.0046a4d0
mov edi, dword [esi + 0x3df24]
lea ecx, [ebp - 0x54]
mov dword [ebp - 4], 0xffffffff
call fcn.0046a630
mov dword [esi + 0xc844c], edi
cmp edi, 2
jl 0x43d544
mov eax, dword [esi + 0x218]
lea ecx, [esi + 0x218]
mov eax, dword [eax + 0x14]
call eax
push 0x10010
push 0x4d9c24
push 0x4d8ed8
test eax, eax
jne 0x43d528
push eax
call dword [0x4bb31c]
jmp 0x43d53a
mov eax, dword [esi + 0x218]
lea ecx, [esi + 0x218]
call dword [eax + 0xb8]
mov dword [esi + 0xc844c], 0
cmp byte [esi + 0xc836b], 0
je 0x43d599
mov eax, dword [esi + 0xc8390]
cmp eax, 7
ja 0x43d58f
mov ecx, dword [esi + eax*4 + 0xc8370]
inc eax
mov dword [esi + 0xc8398], ecx
mov dword [esi + 0xc8390], eax
cmp ecx, 0xffffffff
je 0x43d599
mov dword [esi + 0x3dd7c], 0x1f4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov dword [esi + 0xc8398], 0xffffffff
cmp dword [esi + 0xc8430], 0
je 0x43d5c3
cmp byte [esi + 0xc81ec], 0
je 0x43d5b7
mov dword [esi + 0x3dd7c], 0xc8
jmp 0x43d5f7
mov dword [esi + 0x3dd7c], 0x3c
jmp 0x43d5e2
cmp byte [esi + 0xc81ec], 0
je 0x43d5d8
mov dword [esi + 0x3dd7c], 0xc8
jmp 0x43d5f7
mov dword [esi + 0x3dd7c], 0x32
mov eax, dword [esi + 0xf45c]
mov dword [esi + 0xc8438], eax
add eax, 0x3c
mov dword [esi + 0xc843c], eax
cmp byte [esi + 0xc836a], 0
je case.0x43e464.701
call fcn.0041f560
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [esi + 0x3de80], 0xffffffff
je 0x43d685
mov eax, dword [esi + 0xec6c]
lea ecx, [esi + 0xec6c]
mov eax, dword [eax]
call eax
mov ecx, dword [esi + 0xeca0]
test al, al
je 0x43d65f
test ecx, ecx
je 0x43d685
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
test al, al
je 0x43d685
mov ecx, dword [esi + 0xeca0]
test ecx, ecx
je 0x43d685
mov eax, dword [ecx]
call dword [eax + 0x14]
jmp 0x43d685
test ecx, ecx
je 0x43d66d
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
test al, al
jne 0x43d685
cmp byte [esi + 0xc80ce], 0
jne 0x43d685
mov ecx, dword [esi + 0xeca0]
test ecx, ecx
je 0x43d685
mov eax, dword [ecx]
call dword [eax + 0x18]
cmp byte [esi + 0xc8248], 0
jne 0x43d6f3
cmp dword [esi + 0xeea0], 0x4ff
mov eax, dword [esi + 0xeea4]
ja 0x43d6b0
add eax, 0xfffffddf
cmp eax, 0xae
ja 0x43d6b0
mov al, 1
jmp 0x43d6b2
xor al, al
mov byte [ebp - 0x14], al
cmp byte [0x5d7896], al
je 0x43d6f3
lea ecx, [esi + 0xf47c]
call fcn.00406e90
cmp dword [esi + 0xc8430], 0
mov ecx, esi
setne al
movzx eax, al
push eax
push dword [ebp - 0x14]
call fcn.004060d0
call fcn.0043d1c0
mov al, byte [ebp - 0x14]
mov byte [0x5d7896], al
mov byte [esi + 0xf295], al
mov ecx, esi
call fcn.00403f40
mov ecx, dword [esi + 0xf490]
mov dword [ebp - 0x20], eax
mov dword [esi + 0xf36c], ecx
cmp ecx, 0x13
jl 0x43d718
mov dword [esi + 0xf36c], 0
mov edi, dword [esi + 0xee04]
mov eax, edi
mov edx, dword [esi + 0xee08]
mov ecx, edx
shr ecx, 1
shr eax, 1
xor al, cl
mov byte [ebp - 0x19], 0
and al, cl
mov dword [ebp - 0x14], edi
test al, 1
je 0x43d7ad
mov eax, dword [esi + 0xc8240]
cmp eax, 8
ja case.default.0x43d746
jmp dword [eax*4 + 0x43eb0c]
mov dword [ebp - 0x20], 4
jmp 0x43d7aa
mov dword [ebp - 0x20], 7
jmp 0x43d7aa
mov dword [ebp - 0x20], 2
jmp 0x43d7aa
mov dword [ebp - 0x20], 3
jmp 0x43d7aa
mov dword [ebp - 0x20], 0xd
jmp 0x43d7aa
mov dword [ebp - 0x20], 0xe
jmp 0x43d7aa
mov dword [ebp - 0x20], 8
jmp 0x43d7aa
mov byte [ebp - 0x19], 1
jmp 0x43d7aa
push 0x4d8320
mov ecx, esi
call fcn.00450ea0
mov edx, dword [esi + 0xee08]
mov edi, dword [esi + 0xee04]
mov dword [ebp - 0x14], edi
mov ecx, edi
mov eax, edx
shr eax, 0x14
shr ecx, 0x14
xor al, cl
and al, cl
mov ecx, 4
test al, 1
mov eax, dword [ebp - 0x20]
cmovne eax, ecx
mov ecx, edx
mov dword [ebp - 0x20], eax
mov eax, edi
shr ecx, 4
shr eax, 4
xor al, cl
and al, cl
test al, 1
jne 0x43d7ef
mov ecx, edi
mov eax, edx
shr ecx, 0x17
shr eax, 0x17
xor al, cl
and al, cl
test al, 1
je 0x43d7f6
mov dword [ebp - 0x20], 1
mov ecx, edi
mov eax, edx
shr eax, 0x15
shr ecx, 0x15
xor al, cl
and al, cl
mov ecx, 7
test al, 1
mov eax, dword [ebp - 0x20]
cmovne eax, ecx
mov ecx, edi
mov dword [ebp - 0x20], eax
mov eax, edx
shr eax, 0x1a
shr ecx, 0x1a
xor al, cl
and al, cl
mov ecx, 2
test al, 1
mov eax, dword [ebp - 0x20]
cmovne eax, ecx
mov ecx, edi
mov dword [ebp - 0x20], eax
mov eax, edx
shr eax, 0x1d
shr ecx, 0x1d
xor al, cl
and al, cl
mov ecx, 5
test al, 1
mov eax, dword [ebp - 0x20]
cmovne eax, ecx
mov ecx, edi
mov dword [ebp - 0x20], eax
mov eax, edx
shr eax, 0x1e
shr ecx, 0x1e
xor al, cl
and al, cl
mov ecx, 6
test al, 1
mov eax, dword [ebp - 0x20]
cmovne eax, ecx
mov ecx, edi
mov dword [ebp - 0x20], eax
mov eax, edx
mov edi, dword [ebp - 0x20]
shr eax, 0x16
shr ecx, 0x16
xor al, cl
and al, cl
mov ecx, dword [ebp - 0x14]
test al, 1
mov eax, 8
cmovne edi, eax
mov eax, edx
xor eax, ecx
mov dword [ebp - 0x20], edi
and eax, ecx
test eax, 0x50000
je 0x43d924
mov ecx, dword [0x5d90d8]
sub ecx, 1
mov dword [ebp - 0x14], ecx
jns 0x43d8b8
mov ecx, dword [esi + 0xc8434]
dec ecx
mov dword [ebp - 0x14], ecx
xor edx, edx
mov eax, 5
cmp dword [esi + 0xc844c], 1
cmovne eax, edx
add eax, ecx
lea ecx, [esi + 0x2f0]
push dword [eax*8 + 0x4c5114]
push dword [eax*8 + 0x4c5110]
lea eax, [ebp - 0x34]
push eax
call fcn.0045fad0
lea edx, [ebp - 0x2c]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
lea ecx, [esi + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0x28], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
call dword [0x4bb340]
mov eax, dword [ebp - 0x14]
mov edx, dword [esi + 0xee08]
mov ecx, dword [esi + 0xee04]
mov dword [0x5d90d8], eax
jmp 0x43d92c
mov eax, dword [0x5d90d8]
mov dword [ebp - 0x14], eax
mov eax, edx
xor eax, ecx
and eax, ecx
test eax, 0xa0000
je 0x43d9b3
mov eax, dword [ebp - 0x14]
xor edi, edi
inc eax
cmp eax, dword [esi + 0xc8434]
cmovl edi, eax
xor ecx, ecx
cmp dword [esi + 0xc844c], 1
mov eax, 5
cmovne eax, ecx
lea ecx, [esi + 0x2f0]
add eax, edi
push dword [eax*8 + 0x4c5114]
push dword [eax*8 + 0x4c5110]
lea eax, [ebp - 0x18]
push eax
call fcn.0045fad0
lea edx, [ebp - 0x2c]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
lea ecx, [esi + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0x28], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
call dword [0x4bb340]
mov edx, dword [esi + 0xee08]
mov ecx, dword [esi + 0xee04]
mov dword [0x5d90d8], edi
mov edi, dword [ebp - 0x20]
shr ecx, 0x1f
shr edx, 0x1f
xor dl, cl
test cl, dl
jne 0x43dda1
cmp byte [ebp - 0x19], 0
jne 0x43dda1
lea ecx, [esi + 0xeea8]
push 3
call fcn.00401ef0
test al, al
je 0x43d9f0
push 3
lea ecx, [esi + 0xeea8]
mov edi, 2
call fcn.0045cf70
push 4
lea ecx, [esi + 0xeea8]
call fcn.00401ef0
test al, al
je 0x43da12
mov edi, 3
lea ecx, [esi + 0xeea8]
push edi
call fcn.0045cf70
push 1
lea ecx, [esi + 0xeea8]
call fcn.00401ef0
test al, al
je 0x43da35
push 3
lea ecx, [esi + 0xeea8]
mov edi, 1
call fcn.0045cf70
push 2
lea ecx, [esi + 0xeea8]
call fcn.00401ef0
test al, al
je 0x43da58
push 3
lea ecx, [esi + 0xeea8]
mov edi, 4
call fcn.0045cf70
lea eax, [edi - 1]
cmp eax, 0x16
ja case.0x43da64.7
jmp dword [eax*4 + 0x43eb30]
push 0
mov ecx, esi
call fcn.00441b90
lea eax, [edi - 0x13]
mov dword [esi + 0x3dd7c], 0x1f4
mov dword [esi + 0xc8398], eax
jmp case.0x43da64.7
mov ecx, esi
call fcn.00412600
mov dword [esi + 0x3dd7c], 0x33e
jmp case.0x43da64.7
push 0
mov ecx, esi
call fcn.00441b90
mov ecx, esi
call fcn.00412600
mov dword [0x5d7b98], 0
mov dword [esi + 0x3dd7c], 0x334
jmp case.0x43da64.7
cmp byte [esi + 0xc836c], 0
jne case.0x43da64.7
mov ecx, esi
call fcn.00412600
push 0
mov ecx, esi
call fcn.00441b90
cmp byte [esi + 0xc81f1], 0
je 0x43db00
mov dword [esi + 0x3dd7c], 0x2c6
jmp case.0x43da64.7
push 3
push 2
mov ecx, esi
call fcn.004388e0
mov dword [esi + 0x3dd7c], 0x2bc
jmp case.0x43da64.7
cmp byte [esi + 0xc836c], 0
jne case.0x43da64.7
cmp dword [esi + 0xc8358], 7
ja case.0x43da64.7
mov ecx, esi
call fcn.00412600
push 0
mov ecx, esi
call fcn.00441b90
cmp byte [esi + 0xc81f2], 0
je 0x43db5c
mov dword [esi + 0x3dd7c], 0x2f8
jmp case.0x43da64.7
push 4
push 3
mov ecx, esi
call fcn.004388e0
mov dword [esi + 0x3dd7c], 0x2ee
jmp case.0x43da64.7
cmp dword [esi + 0xf4cc], 0
je case.0x43da64.7
mov dword [esi + 0xf4d4], 0xffffffff
mov eax, dword [esi + 0xf4c8]
mov dword [esi + 0xf4d0], eax
mov dword [esi + 0xf4d4], 0
mov eax, dword [eax + 4]
add eax, 8
je case.0x43da64.7
mov ecx, dword [eax + 0x88]
cmp ecx, dword [esi + 0xc801c]
je case.0x43da64.7
mov edx, dword [eax + 0x8c]
test edx, edx
je case.0x43da64.7
movzx eax, byte [esi + 0xc80ed]
push eax
push edx
push ecx
mov ecx, esi
call fcn.004417e0
jmp case.0x43da64.7
cmp dword [esi + 0xf4cc], 1
jle case.0x43da64.7
mov dword [esi + 0x3dd7c], 0x320
jmp case.0x43da64.7
cmp byte [esi + 0xc8369], 0
mov byte [esi + 0xc8368], 0
sete al
mov byte [esi + 0xc8449], 0
mov byte [esi + 0xc8369], al
mov byte [esi + 0xc8448], al
jmp case.0x43da64.7
cmp byte [esi + 0xc8368], 0
mov byte [esi + 0xc8369], 0
sete al
mov byte [esi + 0xc8448], 0
mov byte [esi + 0xc8368], al
mov byte [esi + 0xc8449], al
jmp case.0x43da64.7
mov dword [esi + 0x3dd7c], 0x8c
jmp case.0x43da64.7
push 0
mov ecx, esi
call fcn.00441b90
mov ecx, esi
call fcn.00412600
mov dword [esi + 0x3dd7c], 0x348
jmp case.0x43da64.7
cmp byte [esi + 0xc836c], 0
jne case.0x43da64.7
mov ecx, esi
call fcn.00412600
mov byte [esi + 0xc844a], 1
mov dword [esi + 0x3dd7c], 0x34d
jmp case.0x43da64.7
cmp byte [esi + 0xc836c], 0
jne case.0x43da64.7
mov ecx, esi
call fcn.00412600
mov byte [esi + 0xc844a], 0
mov dword [esi + 0x3dd7c], 0x34d
jmp case.0x43da64.7
cmp byte [esi + 0xc8248], 0
lea ecx, [esi + 0xf47c]
sete al
mov byte [esi + 0xc8248], al
mov byte [esi + 0xf295], al
mov byte [0x5d7896], al
call fcn.00406e90
cmp dword [esi + 0xc8430], 0
mov ecx, esi
setne al
movzx eax, al
push eax
movzx eax, byte [esi + 0xc8248]
push eax
call fcn.004060d0
call fcn.0043d1c0
jmp case.0x43da64.7
mov ecx, esi
call fcn.0043c1d0
test al, al
je case.0x43da64.7
cmp byte [esi + 0xc81fc], 0
je 0x43dd3f
mov dword [esi + 0x3dd7c], 0x230
jmp case.0x43da64.7
push 0xe
push 7
mov ecx, esi
call fcn.004388e0
mov dword [esi + 0x3dd7c], 0x226
jmp case.0x43da64.7
call fcn.00455c60
mov eax, dword [esi + 0xf35c]
mov ecx, dword [esi + 0xf45c]
add eax, 6
cmp eax, ecx
jae case.0x43e464.701
mov eax, dword [esi + 0xf360]
xor edx, edx
inc eax
mov dword [esi + 0xf35c], ecx
cmp eax, 0x12
cmovge eax, edx
mov dword [esi + 0xf360], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x13
mov ecx, esi
call fcn.0041e400
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0xc
lea ecx, [esi + 0xf47c]
call fcn.004074c0
push 0xb
lea ecx, [esi + 0xf47c]
call fcn.004074c0
mov eax, dword [esi + 0xf45c]
mov dword [0x5d9088], eax
mov dword [esi + 0x3dd7c], 0x91
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edi, dword [esi + 0xf45c]
mov eax, 0x1e
sub edi, dword [0x5d9088]
cmp edi, eax
cmova edi, eax
cmp byte [esi + 0xc8200], 0
sete al
imul ecx, edi, 0x64
movzx eax, al
push eax
mov eax, 0x88888889
mul ecx
mov ecx, esi
shr edx, 4
push edx
call fcn.00447df0
cmp edi, 0x1e
jb case.0x43e464.701
cmp byte [esi + 0xc8200], 0
mov ecx, esi
sete al
mov byte [esi + 0xc8200], al
call fcn.00447640
mov dword [esi + 0x3dd7c], 0x64
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [esi + 0x3de80], 0xffffffff
je 0x43dee0
mov eax, dword [esi + 0xec6c]
lea ecx, [esi + 0xec6c]
mov eax, dword [eax]
call eax
mov ecx, dword [esi + 0xeca0]
test al, al
je 0x43deba
test ecx, ecx
je 0x43dee0
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
test al, al
je 0x43dee0
mov ecx, dword [esi + 0xeca0]
test ecx, ecx
je 0x43dee0
mov eax, dword [ecx]
call dword [eax + 0x14]
jmp 0x43dee0
test ecx, ecx
je 0x43dec8
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
test al, al
jne 0x43dee0
cmp byte [esi + 0xc80ce], 0
jne 0x43dee0
mov ecx, dword [esi + 0xeca0]
test ecx, ecx
je 0x43dee0
mov eax, dword [ecx]
call dword [eax + 0x18]
mov ecx, esi
call fcn.00403f40
mov edx, dword [esi + 0xee04]
mov edi, dword [0x5d90d8]
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0xee08]
mov ecx, eax
shr edx, 0x10
shr ecx, 0x10
xor cl, dl
and cl, dl
mov edx, 5
test cl, 1
je 0x43df82
sub edi, 1
jns 0x43df1e
mov edi, dword [esi + 0xc8434]
dec edi
xor ecx, ecx
mov eax, edx
cmp dword [esi + 0xc844c], 1
cmovne eax, ecx
lea ecx, [esi + 0x2f0]
add eax, edi
push dword [eax*8 + 0x4c5114]
push dword [eax*8 + 0x4c5110]
lea eax, [ebp - 0x24]
push eax
call fcn.0045fad0
lea edx, [ebp - 0x2c]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
lea ecx, [esi + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0x28], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
call dword [0x4bb340]
mov eax, dword [esi + 0xee08]
mov edx, 5
mov dword [0x5d90d8], edi
mov ecx, dword [esi + 0xee04]
shr ecx, 0x11
shr eax, 0x11
xor al, cl
and al, cl
test al, 1
je 0x43dffb
lea eax, [edi + 1]
xor edi, edi
cmp eax, dword [esi + 0xc8434]
lea ecx, [esi + 0x2f0]
cmovl edi, eax
xor eax, eax
cmp dword [esi + 0xc844c], 1
cmovne edx, eax
lea eax, [ebp - 0x3c]
add edx, edi
push dword [edx*8 + 0x4c5114]
push dword [edx*8 + 0x4c5110]
push eax
call fcn.0045fad0
lea edx, [ebp - 0x2c]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
lea ecx, [esi + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0x28], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
call dword [0x4bb340]
mov dword [0x5d90d8], edi
mov edi, dword [ebp - 0x14]
add edi, 0xffffffed
cmp edi, 4
ja 0x43e01f
push 0
mov ecx, esi
call fcn.00441b90
mov dword [esi + 0xc8398], edi
mov dword [esi + 0x3dd7c], 0x1f4
mov eax, dword [esi + 0xf35c]
mov ecx, dword [esi + 0xf45c]
add eax, 6
cmp eax, ecx
jae 0x43e04d
mov eax, dword [esi + 0xf360]
xor edx, edx
inc eax
mov dword [esi + 0xf35c], ecx
cmp eax, 0x12
cmovge eax, edx
mov dword [esi + 0xf360], eax
mov eax, dword [esi + 0xc8440]
cmp eax, ecx
ja 0x43e0b6
add eax, 6
xor ecx, ecx
mov dword [esi + 0xc8440], eax
mov edx, 0x5d916c
mov eax, dword [0x5d7bc8]
inc eax
cmp eax, 0xa
push 1
cmovge eax, ecx
mov ecx, 0x5d91d4
mov dword [0x5d7bc8], eax
call fcn.00408990
add esp, 4
cmp eax, 0xffffffff
je 0x43e0b6
mov ecx, dword [0x5d7bc8]
mov ecx, dword [ecx*4 + 0x4c5068]
shl ecx, 4
add ecx, 0x4c5090
push ecx
push 0x74
push 0x2a0
push 5
push eax
push 1
mov ecx, esi
call fcn.00430320
mov ecx, esi
call fcn.0043d020
mov eax, dword [esi + 0xf45c]
cmp eax, dword [esi + 0xc843c]
jb case.0x43e464.701
add eax, 0x3c
mov dword [esi + 0xc843c], eax
push 0
mov ecx, esi
call fcn.00441b90
mov eax, dword [esi + 0xc8434]
mov dword [esi + 0xc8398], eax
mov dword [esi + 0x3dd7c], 0x1f4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, dword [esi + 0xc8440]
mov eax, dword [esi + 0xf45c]
cmp ecx, eax
ja 0x43e198
lea eax, [ecx + 2]
mov edi, 0x5d91d4
mov dword [esi + 0xc8440], eax
xor ecx, ecx
mov eax, dword [0x5d7bc8]
inc eax
mov dword [ebp - 0x14], ecx
cmp eax, 8
cmovge eax, ecx
mov dword [0x5d7bc8], eax
nop
push 1
lea edx, [edi - 0x68]
mov ecx, edi
call fcn.00408990
mov edx, eax
add esp, 4
cmp edx, 0xffffffff
je 0x43e183
mov eax, dword [ebp - 0x14]
mov ecx, dword [0x5d7bc8]
add ecx, eax
shl ecx, 4
add ecx, 0x4c4d58
push ecx
push dword [eax + 0x4c5034]
mov ecx, esi
push dword [eax + 0x4c5030]
push 5
push edx
push 1
call fcn.00430320
add dword [ebp - 0x14], 8
add edi, 4
cmp edi, 0x5d91dc
jl 0x43e140
mov eax, dword [esi + 0xf45c]
cmp eax, dword [esi + 0xc843c]
jb case.0x43e464.701
jmp 0x43e0d8
push 1
call fcn.0042fd60
cmp dword [esi + 0xc8430], 0
mov ecx, esi
setne al
movzx eax, al
push eax
movzx eax, byte [esi + 0xc8248]
push eax
call fcn.004060d0
mov al, byte [esi + 0xc8248]
mov byte [0x5d7896], al
call fcn.0043d1c0
mov eax, dword [esi + 0xf45c]
mov dword [esi + 0xf35c], eax
mov byte [esi + 0xf328], 1
mov byte [esi + 0xc8491], 0
mov dword [esi + 0x3dd7c], 0xd2
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp byte [esi + 0xc844b], 0
je 0x43e268
mov byte [esi + 0xc844b], 0
cmp byte [esi + 0xc8450], 0
jne 0x43e225
call fcn.00412600
mov eax, dword [esi + 0xc8360]
cmp eax, 0x88
jl 0x43e247
cmp eax, 0x98
jl 0x43e256
mov dword [esi + 0xc8360], 0x88
mov eax, 0x88
push 0
push 0
push eax
mov ecx, esi
call fcn.00417f00
inc dword [esi + 0xc8360]
mov edx, dword [esi + 0xc8430]
test edx, edx
je 0x43de5a
mov ecx, dword [esi + 0xf45c]
mov eax, edx
shl eax, 4
sub eax, edx
mov dword [esi + 0xc8438], ecx
mov dword [0x5d7bc8], 0
mov dword [esi + 0x3dd7c], 0x96
lea eax, [ecx + eax*4]
mov dword [esi + 0xc843c], eax
lea eax, [ecx + 6]
mov dword [esi + 0xc8440], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [esi + 0xc8398]
lea ecx, [esi + 0x3dca8]
push dword [esi + eax*4 + 0xc83a4]
push dword [esi + 0xc83a0]
push dword [esi + 0xc839c]
call fcn.0043cbc0
test al, al
je 0x43de5a
mov ecx, esi
call fcn.0043c380
imul eax, dword [esi + 0x3dcdc], 0x9c
add eax, dword [esi + 0x3dcd4]
je 0x43e31c
mov eax, dword [eax + 0x64]
cmp eax, 1
je 0x43e315
cmp eax, 3
jne 0x43e31c
mov ecx, esi
call fcn.0043c2c0
mov dword [esi + 0x3dd7c], 0x384
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp eax, 0x258
jg 0x43e44d
je case.0x43e464.700
sub eax, 0x226
je 0x43e41f
sub eax, 0xa
jne case.0x43e464.701
nop
cmp byte [esi + 0xc8450], 0
jne 0x43e360
call fcn.0043d350
lea ecx, [ebp - 0x6c]
call fcn.0046a4d0
mov eax, dword [esi + 0x3df2c]
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], 0xffffffff
call fcn.0046a630
lea ecx, [ebp - 0x84]
call fcn.0046a4d0
mov edi, dword [esi + 0x3df28]
lea ecx, [ebp - 0x84]
mov dword [ebp - 4], 0xffffffff
call fcn.0046a630
mov ecx, esi
call fcn.0041e4e0
call fcn.0041e700
lea eax, [edi - 1]
mov ecx, esi
push eax
push dword [ebp - 0x14]
call fcn.0043c230
mov ecx, esi
test al, al
jne 0x43e3ea
push 0x4d8360
call fcn.00450ea0
mov dword [esi + 0x3dd64], 3
jmp 0x43e9f2
mov eax, dword [esi + 0x3dd58]
mov dword [esi + 0x3dd5c], eax
call fcn.0041ee70
push 1
mov ecx, esi
call fcn.00447520
mov ecx, esi
call fcn.0042fe10
call fcn.00456290
mov dword [esi + 0x3dd78], 0
jmp 0x43e9f2
mov ecx, 0x230
cmp dword [0x5d90f8], 1
mov eax, 0x64
cmove eax, ecx
mov dword [esi + 0x3dd7c], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
sub eax, 0x2bc
cmp eax, 0xc8
ja case.0x43e464.701
movzx eax, byte [eax + 0x43ebc4]
jmp dword [eax*4 + 0x43eb8c]
mov ecx, 0x2c6
jmp 0x43e424
push 8
call fcn.00441d00
inc dword [esi + 0xc8358]
cmp dword [esi + 0xc8358], 8
jl 0x43e492
mov dword [esi + 0xc8358], 0
cmp byte [esi + 0xc8450], 0
jne 0x43e492
mov eax, dword [esi + 0xc8358]
mov ecx, esi
push 0
push 0x4d8394
add eax, 0x98
push eax
call fcn.00417f00
mov dword [esi + 0x3dd7c], 0x64
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, 0x2f8
jmp 0x43e424
cmp dword [esi + 0xc8358], 7
mov dword [esi + 0x3dd7c], 0x64
ja case.0x43e464.701
cmp byte [esi + 0xc8450], 0
jne 0x43e4f4
call fcn.0043d350
mov ecx, esi
call fcn.0041e4e0
call fcn.0041e700
mov eax, dword [esi + 0xc8358]
mov ecx, esi
push 0
add eax, 0x98
push eax
call fcn.00418690
mov ecx, esi
test al, al
jne 0x43e542
push 0x4d83a4
call fcn.00450ea0
mov dword [esi + 0x3dd64], 3
jmp 0x43e9f2
mov eax, dword [esi + 0x3dd58]
mov dword [esi + 0x3dd5c], eax
call fcn.0041ee70
mov ecx, esi
call fcn.0042fe10
push 9
call fcn.00441d00
mov dword [esi + 0x3dd78], 0
jmp 0x43e9f2
cmp dword [esi + 0xf4cc], 0
je 0x43e5a0
mov dword [esi + 0xf4d4], 0xffffffff
mov eax, dword [esi + 0xf4c8]
mov dword [esi + 0xf4d0], eax
mov dword [esi + 0xf4d4], 0
nop dword [eax]
cmp byte [esi + 0xc8450], 0
jne 0x43e5a0
call fcn.0043d350
lea ecx, [esi + 0xf47c]
call fcn.00406e90
push 0x10
mov ecx, esi
call fcn.0041e400
mov dword [esi + 0x3dd7c], 0x352
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp byte [esi + 0xc8450], 0
jne case.0x43e464.810
push 1
mov byte [esi + 0xf4ac], 1
call fcn.00447520
call fcn.0043d350
lea ecx, [esi + 0xf47c]
call fcn.00406e90
mov byte [esi + 0xc8491], 1
push 9
jmp 0x43e5bb
cmp byte [esi + 0xc8450], 0
jne case.0x43e464.820
call fcn.0043d350
push 0
mov ecx, esi
mov byte [esi + 0xf4ac], 0
call fcn.0042fd60
lea ecx, [ebp - 0x9c]
call fcn.0046a4d0
lea ecx, [ebp - 0x9c]
mov dword [esi + 0x3df04], 0
mov dword [ebp - 4], 0xffffffff
call fcn.0046a630
cmp byte [esi + 0xc836b], 0
jne 0x43e667
mov ecx, esi
call fcn.00447c10
lea ecx, [esi + 0xf47c]
mov word [esi + 0xc8479], 0
mov byte [esi + 0xc847b], 0
call fcn.00406e90
push 3
mov ecx, esi
mov byte [esi + 0xc8491], 1
call fcn.00441d00
push 8
mov ecx, esi
call fcn.0041e400
cmp dword [0x5d7b98], 1
jne 0x43e5c2
mov dword [esi + 0x3dd88], 0xa
jmp 0x43e5c2
cmp byte [esi + 0xc8450], 0
jne case.0x43e464.830
call fcn.0043d350
push 0
mov ecx, esi
mov byte [esi + 0xf4ac], 0
call fcn.0042fd60
lea ecx, [ebp - 0xb4]
call fcn.0046a4d0
lea ecx, [ebp - 0xb4]
mov dword [esi + 0x3df04], 0
mov dword [ebp - 4], 0xffffffff
call fcn.0046a630
cmp byte [esi + 0xc836b], 0
jne 0x43e70c
mov ecx, esi
call fcn.00447c10
push str.DUMMY
lea ecx, [esi + 0xf47c]
call fcn.00406be0
mov dword [esi + 0x3dd7c], 0x343
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov al, byte [esi + 0xee08]
mov cl, byte [esi + 0xee04]
xor cl, al
and cl, al
test cl, 1
jne 0x43e792
mov edx, dword [esi + 0xee08]
mov eax, edx
mov edi, dword [esi + 0xee04]
mov ecx, edi
shr ecx, 0x14
shr eax, 0x14
xor al, cl
and al, cl
test al, 1
jne 0x43e792
mov ecx, edx
mov eax, edi
shr ecx, 1
shr eax, 1
xor al, cl
and al, cl
test al, 1
jne 0x43e792
mov eax, edi
shr edx, 0xe
shr eax, 0xe
xor dl, al
and dl, al
test dl, 1
je case.0x43e464.701
lea ecx, [esi + 0xf47c]
call fcn.00406e90
lea ecx, [esi + 0xf47c]
call fcn.00406e90
mov byte [esi + 0xc8491], 1
jmp 0x43e5c2
cmp byte [esi + 0xc8450], 0
jne case.0x43e464.840
call fcn.0043d350
push 0
mov ecx, esi
mov byte [esi + 0xf4ac], 0
call fcn.0042fd60
lea ecx, [ebp - 0xcc]
call fcn.0046a4d0
lea ecx, [ebp - 0xcc]
mov dword [esi + 0x3df04], 0
mov dword [ebp - 4], 0xffffffff
call fcn.0046a630
cmp byte [esi + 0xc836b], 0
jne 0x43e809
mov ecx, esi
call fcn.00447c10
lea ecx, [esi + 0xf47c]
mov word [esi + 0xc8479], 0
mov byte [esi + 0xc847b], 0
call fcn.00406e90
mov byte [esi + 0xc8491], 1
push 0x1e
jmp 0x43e5bb
cmp byte [esi + 0xc8450], 0
jne case.0x43e464.845
call fcn.0043d350
push 0
mov ecx, esi
mov byte [esi + 0xf4ac], 0
call fcn.0042fd60
lea ecx, [ebp - 0xe4]
call fcn.0046a4d0
lea ecx, [ebp - 0xe4]
mov dword [esi + 0x3df04], 0
mov dword [ebp - 4], 0xffffffff
call fcn.0046a630
cmp byte [esi + 0xc836b], 0
jne 0x43e887
mov ecx, esi
call fcn.00447c10
lea ecx, [esi + 0xf47c]
mov word [esi + 0xc8479], 0
mov byte [esi + 0xc847b], 0
call fcn.00406e90
push 0x11
mov ecx, esi
mov byte [esi + 0xc8491], 1
call fcn.0041e400
mov al, byte [esi + 0xc844a]
mov byte [0x508700], al
mov byte [0x508701], 0
jmp 0x43e5c2
push 1
mov byte [esi + 0xf4ac], 1
call fcn.0042fd60
push 1
mov ecx, esi
mov word [esi + 0xc847a], 0x101
mov byte [esi + 0xc8479], 1
call fcn.00447520
cmp byte [esi + 0xc8248], 0
jne 0x43e907
mov byte [esi + 0xf4ac], 0
mov byte [esi + 0xf295], 0
mov ecx, esi
mov dword [esi + 0xf36c], 0
call fcn.00456290
mov byte [esi + 0xc8491], 1
mov dword [esi + 0x3dd7c], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp byte [esi + 0xc8450], 0
jne case.0x43e464.900
lea ecx, [esi + 0xf47c]
call fcn.00406e90
call fcn.0043d350
cmp byte [esi + 0xc8202], 0
je 0x43e970
mov al, byte [esi + 0xc8449]
mov byte [esi + 0xc8368], al
jmp 0x43e977
mov byte [esi + 0xc8368], 0
cmp byte [esi + 0xc8203], 0
je 0x43e98e
mov al, byte [esi + 0xc8448]
mov byte [esi + 0xc8369], al
jmp 0x43e995
mov byte [esi + 0xc8369], 0
cmp byte [esi + 0xc8248], 0
jne 0x43e9ae
mov byte [esi + 0xf4ac], 0
mov byte [esi + 0xf295], 0
jmp 0x43e9b5
mov byte [esi + 0xf295], 1
mov ecx, esi
call fcn.0042fc50
mov ecx, esi
call fcn.0042fe10
call fcn.00453340
lea ecx, [ebp - 0xfc]
call fcn.0046a4d0
lea ecx, [ebp - 0xfc]
mov dword [esi + 0x3df24], 0
call fcn.0046a630
mov dword [esi + 0x3dd64], 4
mov dword [esi + 0x3dd7c], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret