Function at 0x5df3cc
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff54
push ebx
push esi
push edi
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], edx
mov dword [ebp - 8], eax
mov dword [ebp - 0x2c], 0xfffffffc
mov eax, dword [ebp + 8]
xor edx, edx
mov dword [eax], edx
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x974]
dec eax
test eax, eax
jl 0x5e080f
inc eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x30], 0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x970]
mov edx, dword [ebp - 0x30]
mov edx, dword [eax + edx*4]
mov eax, dword [ebp - 8]
call fcn.005cd078
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 8]
inc edx
mov eax, dword [ebp - 8]
call fcn.005b372c
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0xc]
inc edx
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 8]
push dword [eax + 0x404]
push dword [eax + 0x400]
lea ecx, [ebp - 0x14]
mov eax, dword [ebp - 4]
mov edx, eax
mov eax, dword [ebp - 8]
call fcn.005ed538
mov eax, dword [ebp - 8]
push dword [eax + 0x3fc]
push dword [eax + 0x3f8]
mov eax, dword [ebp - 4]
mov edx, eax
mov eax, dword [ebp - 8]
call fcn.005ef030
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0
je 0x5df527
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x38], eax
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x10], 3
jne 0x5df55d
cmp dword [ebp - 0x64], 0
jle 0x5df55d
mov eax, dword [ebp - 8]
fld qword [eax + 0x3f8]
fcomp dword [0x5e081c]
fnstsw ax
sahf
jne 0x5df55d
sub dword [ebp - 0x18], 2
sub dword [ebp - 0x20], 2
sub dword [ebp - 0x34], 2
sub dword [ebp - 0x38], 2
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x44]
lea edx, [ebp - 0x40]
lea eax, [ebp - 0x3c]
call fcn.0055e9a0
xor eax, eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], 0x408f4000
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 0x41c]
push ebx
mov eax, dword [ebp - 8]
mov esi, dword [eax + 0x420]
push esi
mov eax, dword [ebp - 8]
add ebx, dword [eax + 0x424]
push ebx
mov eax, dword [ebp - 8]
add esi, dword [eax + 0x428]
push esi
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
call fcn.005970f4
test al, al
jne 0x5df601
push ebp
call fcn.005def48
pop ecx
test al, al
jne 0x5df601
push ebp
call fcn.005df028
pop ecx
test al, al
jne 0x5df601
push ebp
call fcn.005df118
pop ecx
test al, al
jne 0x5df601
push ebp
call fcn.005df284
pop ecx
test al, al
je 0x5e0800
mov edx, dword [ebp - 0xa0]
mov edx, dword [edx + 8]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
cmp edx, eax
jne 0x5df62a
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx + 4]
mov ebx, dword [ebp - 0xa0]
cmp ecx, dword [ebx + 0xc]
je 0x5df636
mov ecx, dword [ebp - 0xa0]
cmp byte [ecx + 0x10], 1
jne 0x5df64c
xor esi, esi
xor edi, edi
xor eax, eax
mov dword [ebp - 0x94], eax
xor eax, eax
mov dword [ebp - 0x98], eax
jmp 0x5df6b0
cmp edx, eax
jne 0x5df669
xor esi, esi
or edi, 0xffffffff
xor eax, eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x98], 1
jmp 0x5df6b0
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 0xa0]
cmp eax, dword [edx + 0xc]
jne 0x5df696
or esi, 0xffffffff
xor edi, edi
mov dword [ebp - 0x94], 1
xor eax, eax
mov dword [ebp - 0x98], eax
jmp 0x5df6b0
or esi, 0xffffffff
or edi, 0xffffffff
mov dword [ebp - 0x94], 1
mov dword [ebp - 0x98], 1
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push esi
push edi
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df6e3
mov eax, dword [ebp + 8]
mov dword [eax], 1
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x94]
push eax
mov eax, dword [ebp - 0x98]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df722
mov eax, dword [ebp + 8]
mov dword [eax], 2
mov eax, dword [ebp - 0xa0]
mov bl, byte [eax + 0x10]
cmp bl, 1
je 0x5df8d4
cmp bl, 7
je 0x5df8d4
cmp bl, 0xb
je 0x5df8d4
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x94]
push eax
push edi
lea eax, [ebp - 0x70]
push eax
mov edx, ebx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df778
mov eax, dword [ebp + 8]
mov dword [eax], 4
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push esi
mov eax, dword [ebp - 0x98]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df7b1
mov eax, dword [ebp + 8]
mov dword [eax], 5
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x10], 8
jne 0x5df7d0
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x196], 0
jne 0x5df8d4
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
sar eax, 1
jns 0x5df7dd
adc eax, 0
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push esi
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df80e
mov eax, dword [ebp + 8]
mov dword [eax], 6
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
sar eax, 1
jns 0x5df81b
adc eax, 0
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x94]
push eax
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df852
mov eax, dword [ebp + 8]
mov dword [eax], 7
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push edi
lea eax, [ebp - 0x70]
push eax
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x18]
sar ecx, 1
jns 0x5df872
adc ecx, 0
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df890
mov eax, dword [ebp + 8]
mov dword [eax], 8
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
mov eax, dword [ebp - 0x98]
push eax
lea eax, [ebp - 0x70]
push eax
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x18]
sar ecx, 1
jns 0x5df8b6
adc ecx, 0
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df8d4
mov eax, dword [ebp + 8]
mov dword [eax], 9
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x10], 0xa
jne 0x5dfb71
mov eax, dword [ebp - 4]
cmp byte [eax + 0x40], 0
jne 0x5dfb71
mov eax, dword [ebp - 4]
cmp byte [eax + 0x19d], 0
jne 0x5dfb71
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x114]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x118]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.005d7e18
test al, al
jne 0x5dfa31
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x50]
mov eax, dword [ebp - 4]
mov edx, eax
mov eax, dword [ebp - 8]
call fcn.005d7ec8
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x54], eax
push ebp
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
call fcn.005df368
pop ecx
mov eax, dword [ebp - 0x4c]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5df9eb
mov eax, dword [ebp + 8]
mov dword [eax], 0xb
push ebp
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
call fcn.005df368
pop ecx
mov eax, dword [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5dfa31
mov eax, dword [ebp + 8]
mov dword [eax], 0xc
mov eax, dword [ebp - 4]
cmp byte [eax + 0x139], 0
je 0x5dfb71
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x13c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x140]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.005d7e18
test al, al
jne 0x5dfb71
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x50]
mov eax, dword [ebp - 4]
mov edx, eax
mov eax, dword [ebp - 8]
call fcn.005d8150
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x64]
add dword [ebp - 0x54], eax
push ebp
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
call fcn.005df368
pop ecx
mov eax, dword [ebp - 0x4c]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5dfb2b
mov eax, dword [ebp + 8]
mov dword [eax], 0xe
push ebp
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
call fcn.005df368
pop ecx
mov eax, dword [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5dfb71
mov eax, dword [ebp + 8]
mov dword [eax], 0xf
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x10], 0xa
jne 0x5dfc4a
mov eax, dword [ebp - 4]
cmp byte [eax + 0x40], 0
jne 0x5dfc4a
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax]
mov eax, dword [ebp - 0xa0]
add edx, dword [eax + 0x114]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov edi, eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0xa0]
add edx, dword [eax + 0x118]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov esi, eax
add edi, dword [ebp - 0x64]
add esi, dword [ebp - 0x64]
xor eax, eax
push ebp
push 0x5dfc43
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x19d], 0
jne 0x5dfc00
push ebp
mov edx, esi
mov eax, edi
call fcn.005df368
pop ecx
push esi
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, edi
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5dfc35
mov eax, dword [ebp + 8]
mov dword [eax], 0xa
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5dfc4a
ret
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x10], 0xa
jne 0x5dfd33
mov eax, dword [ebp - 4]
cmp byte [eax + 0x40], 0
jne 0x5dfd33
mov eax, dword [ebp - 4]
cmp byte [eax + 0x139], 0
je 0x5dfd33
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax]
mov eax, dword [ebp - 0xa0]
add edx, dword [eax + 0x13c]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov edi, eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0xa0]
add edx, dword [eax + 0x140]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov esi, eax
add edi, dword [ebp - 0x64]
add esi, dword [ebp - 0x64]
xor eax, eax
push ebp
push 0x5dfd2c
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x19d], 0
jne 0x5dfce9
push ebp
mov edx, esi
mov eax, edi
call fcn.005df368
pop ecx
push esi
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, edi
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5dfd1e
mov eax, dword [ebp + 8]
mov dword [eax], 0xd
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5dfd33
ret
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x10], 3
jne 0x5e0230
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1dc], 0
je 0x5e0230
mov eax, dword [ebp - 4]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 8]
cdq
xor eax, edx
sub eax, edx
cmp eax, 2
jle 0x5e0230
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0xc]
cdq
xor eax, edx
sub eax, edx
cmp eax, 2
jle 0x5e0230
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
push eax
mov eax, dword [ebp - 4]
mov esi, dword [eax + 8]
push esi
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
push eax
mov edx, esi
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
mov eax, ebx
call fcn.0055e934
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x114]
sub edx, eax
push edx
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
call fcn.0055e934
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x118]
sub edx, eax
push edx
mov ecx, ebx
mov dl, 1
mov eax, dword [ebp - 8]
call fcn.005d7e18
test al, al
jne 0x5dfe0d
mov eax, dword [ebp - 4]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 8]
cdq
xor eax, edx
sub eax, edx
cmp eax, 2
jle 0x5dfe0d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 0xc]
cdq
xor eax, edx
sub eax, edx
cmp eax, 2
jg 0x5dfe11
xor eax, eax
jmp 0x5dfe13
mov al, 1
mov ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x118]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 4]
add edx, dword [eax + 0xc]
sar edx, 1
jns 0x5dfe32
adc edx, 0
mov eax, dword [ebp - 4]
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
add eax, dword [ecx + 8]
sar eax, 1
jns 0x5dfe44
adc eax, 0
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x114]
call fcn.00598e6c
fstp qword [ebp - 0xa8]
wait
mov edx, 5
mov eax, dword [ebp - 8]
call fcn.005eab88
mov dword [ebp - 0xac], eax
fild dword [ebp - 0xac]
fcomp qword [ebp - 0xa8]
fnstsw ax
sahf
jbe 0x5dff9f
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x114]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov edi, eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x118]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov esi, eax
add edi, dword [ebp - 0x64]
add esi, dword [ebp - 0x64]
push esi
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, edi
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5dfee9
mov eax, dword [ebp + 8]
mov dword [eax], 0x12
jmp 0x5e00ad
test bl, bl
je 0x5e00ad
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x114]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x118]
push eax
mov eax, dword [ebp - 4]
push dword [eax + 0x134]
push dword [eax + 0x130]
lea eax, [ebp - 0x60]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 4]
add ecx, dword [eax + 0xc]
sar ecx, 1
jns 0x5dff2b
adc ecx, 0
mov eax, dword [ebp - 4]
mov edx, dword [eax]
mov eax, dword [ebp - 4]
add edx, dword [eax + 8]
sar edx, 1
jns 0x5dff3d
adc edx, 0
mov eax, dword [ebp - 8]
call fcn.005ce19c
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov edi, eax
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov esi, eax
add edi, dword [ebp - 0x64]
add esi, dword [ebp - 0x64]
push esi
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, edi
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e00ad
mov eax, dword [ebp + 8]
mov dword [eax], 0x13
jmp 0x5e00ad
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x114]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x118]
push eax
mov eax, dword [ebp - 4]
push dword [eax + 0x134]
push dword [eax + 0x130]
lea eax, [ebp - 0x60]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 4]
add ecx, dword [eax + 0xc]
sar ecx, 1
jns 0x5dffd9
adc ecx, 0
mov eax, dword [ebp - 4]
mov edx, dword [eax]
mov eax, dword [ebp - 4]
add edx, dword [eax + 8]
sar edx, 1
jns 0x5dffeb
adc edx, 0
mov eax, dword [ebp - 8]
call fcn.005ce19c
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov edi, eax
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov esi, eax
add edi, dword [ebp - 0x64]
add esi, dword [ebp - 0x64]
test bl, bl
je 0x5e004a
push esi
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, edi
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e004a
mov eax, dword [ebp + 8]
mov dword [eax], 0x13
jmp 0x5e00ad
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x114]
mov eax, dword [ebp - 8]
call fcn.005b372c
mov edi, eax
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x118]
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov esi, eax
add edi, dword [ebp - 0x64]
add esi, dword [ebp - 0x64]
push esi
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, edi
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e00ad
mov eax, dword [ebp + 8]
mov dword [eax], 0x12
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x5e0230
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x1e4], 0
je 0x5e0230
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x1e0]
mov eax, dword [ebp - 8]
call fcn.005db494
fstp qword [ebp - 0x90]
wait
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0xa0]
sub eax, dword [edx]
cdq
xor eax, edx
sub eax, edx
mov edx, eax
dec edx
xor eax, eax
call fcn.00430f40
mov dword [ebp - 0xac], eax
fild dword [ebp - 0xac]
fdiv qword [ebp - 0x90]
call fcn.00402f78
mov ebx, eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 0xa0]
sub eax, dword [edx + 4]
cdq
xor eax, edx
sub eax, edx
mov edx, eax
dec edx
xor eax, eax
call fcn.00430f40
mov dword [ebp - 0xac], eax
fild dword [ebp - 0xac]
fdiv qword [ebp - 0x90]
call fcn.00402f78
mov edx, dword [ebp - 0xa0]
mov edx, dword [edx + 0x114]
mov ecx, ebx
sar ecx, 1
jns 0x5e016d
adc ecx, 0
sub edx, ecx
mov dword [ebp - 0x78], edx
mov edx, dword [ebp - 0xa0]
mov edx, dword [edx + 0x118]
mov ecx, eax
sar ecx, 1
jns 0x5e0187
adc ecx, 0
sub edx, ecx
mov dword [ebp - 0x7c], edx
add ebx, dword [ebp - 0x78]
mov dword [ebp - 0x80], ebx
add eax, dword [ebp - 0x7c]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x7c]
push eax
mov eax, dword [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x84]
push eax
push 1
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 8]
call fcn.005b3b38
push eax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 8]
call fcn.005b3a74
mov ecx, dword [ebp - 0x78]
pop edx
call fcn.005e0988
fcomp dword [0x5e0820]
fnstsw ax
sahf
ja 0x5e0230
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 4]
push eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 8]
push eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0xc]
push eax
push 1
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 8]
call fcn.005b3b38
push eax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 8]
call fcn.005b3a74
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx]
pop edx
call fcn.005e0988
fcomp dword [0x5e0820]
fnstsw ax
sahf
jbe 0x5e0230
mov eax, dword [ebp + 8]
mov dword [eax], 0x14
mov edx, dword [ebp - 0xa0]
cmp byte [edx + 0x10], 2
jne 0x5e044e
mov edx, dword [ebp - 4]
cmp byte [edx + 0x41], 0
je 0x5e044e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1e8]
test eax, eax
je 0x5e0261
dec eax
jne 0x5e044e
mov eax, dword [ebp - 4]
cmp byte [eax + 0x19d], 0
je 0x5e044e
mov edx, dword [ebp - 4]
xor ecx, ecx
mov eax, dword [ebp - 8]
call fcn.005dedd4
mov eax, dword [ebp - 4]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 4]
mov eax, dword [eax]
call fcn.0055e934
mov ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
sub eax, dword [edx]
cdq
xor eax, edx
sub eax, edx
mov edx, dword [ebp - 4]
imul dword [edx + 0x114]
mov dword [ebp - 0xac], eax
fild dword [ebp - 0xac]
fdiv dword [0x5e0824]
call fcn.00402f78
add ebx, eax
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.005b372c
mov edi, eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
call fcn.0055e934
mov ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 4]
cdq
xor eax, edx
sub eax, edx
mov edx, dword [ebp - 4]
imul dword [edx + 0x118]
mov dword [ebp - 0xac], eax
fild dword [ebp - 0xac]
fdiv dword [0x5e0824]
call fcn.00402f78
add ebx, eax
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov esi, eax
add edi, dword [ebp - 0x64]
add esi, dword [ebp - 0x64]
push ebp
mov edx, esi
mov eax, edi
call fcn.005df368
pop ecx
push esi
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, edi
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e0366
mov eax, dword [ebp + 8]
mov dword [eax], 0x15
mov eax, dword [ebp - 4]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 4]
mov eax, dword [eax]
call fcn.0055e934
mov ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
sub eax, dword [edx]
cdq
xor eax, edx
sub eax, edx
mov edx, dword [ebp - 4]
imul dword [edx + 0x13c]
mov dword [ebp - 0xac], eax
fild dword [ebp - 0xac]
fdiv dword [0x5e0824]
call fcn.00402f78
add ebx, eax
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.005b372c
mov edi, eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
call fcn.0055e934
mov ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
sub eax, dword [edx + 4]
cdq
xor eax, edx
sub eax, edx
mov edx, dword [ebp - 4]
imul dword [edx + 0x140]
mov dword [ebp - 0xac], eax
fild dword [ebp - 0xac]
fdiv dword [0x5e0824]
call fcn.00402f78
add ebx, eax
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.005b38d0
mov esi, eax
add edi, dword [ebp - 0x64]
add esi, dword [ebp - 0x64]
push ebp
mov edx, esi
mov eax, edi
call fcn.005df368
pop ecx
push esi
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, edi
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e044e
mov eax, dword [ebp + 8]
mov dword [eax], 0x16
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x10], 9
jne 0x5e046b
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jle 0x5e046b
mov eax, dword [ebp + 8]
mov dword [eax], 3
mov eax, dword [ebp - 0xa0]
test byte [eax + 0xac], 4
jne 0x5e048b
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jle 0x5e048b
mov eax, dword [ebp + 8]
mov dword [eax], 3
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x5e04d7
mov eax, dword [ebp - 8]
cmp byte [eax + 0x740], 0
jne 0x5e04d7
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 8]
call fcn.005b3b38
push eax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 8]
call fcn.005b3a74
mov ecx, eax
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.005d06b0
fcomp dword [0x5e0828]
fnstsw ax
sahf
jae 0x5e04d7
mov eax, dword [ebp + 8]
mov dword [eax], 3
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jle 0x5e066d
mov eax, dword [ebp + 8]
cmp dword [eax], 3
je 0x5e066d
mov eax, dword [ebp + 8]
cmp dword [eax], 0x12
je 0x5e066d
mov eax, dword [ebp + 8]
cmp dword [eax], 0x13
je 0x5e066d
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 8]
call fcn.005b3b38
push eax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 8]
call fcn.005b3a74
mov ecx, eax
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.005d06b0
fcomp dword [0x5e0828]
fnstsw ax
sahf
jae 0x5e066d
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x18]
je 0x5e066d
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
je 0x5e066d
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
sar eax, 1
jns 0x5e055f
adc eax, 0
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x18]
sar ecx, 1
jns 0x5e057d
adc ecx, 0
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e059b
mov eax, dword [ebp + 8]
mov dword [eax], 3
mov eax, dword [ebp + 8]
cmp dword [eax], 3
je 0x5e0603
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
sar eax, 1
jns 0x5e05b0
adc eax, 0
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x14]
cdq
xor eax, edx
sub eax, edx
test eax, eax
jns 0x5e05d3
add eax, 3
sar eax, 2
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x18]
sar ecx, 1
jns 0x5e05e3
adc ecx, 0
sub ecx, eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e0603
mov eax, dword [ebp + 8]
mov dword [eax], 3
mov eax, dword [ebp + 8]
cmp dword [eax], 3
je 0x5e066d
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
sar eax, 1
jns 0x5e0618
adc eax, 0
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x14]
cdq
xor eax, edx
sub eax, edx
mov ecx, eax
test ecx, ecx
jns 0x5e063d
add ecx, 3
sar ecx, 2
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x18]
sar eax, 1
jns 0x5e064d
adc eax, 0
add ecx, eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e066d
mov eax, dword [ebp + 8]
mov dword [eax], 3
mov eax, dword [ebp + 8]
cmp dword [eax], 3
je 0x5e0681
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x5e079b
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x10], 1
jne 0x5e079b
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x198], 0xc8
je 0x5e079b
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x50]
mov eax, dword [ebp - 4]
mov edx, eax
mov eax, dword [ebp - 8]
call fcn.005debc4
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 8]
call fcn.005b38d0
add eax, dword [ebp - 0x64]
push eax
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 8]
call fcn.005b372c
add eax, dword [ebp - 0x64]
lea ecx, [ebp - 0xa8]
pop edx
call fcn.0041c23c
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 8]
call fcn.005b38d0
add eax, dword [ebp - 0x64]
push eax
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 8]
call fcn.005b372c
add eax, dword [ebp - 0x64]
lea ecx, [ebp - 0xa8]
pop edx
call fcn.0041c23c
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x4c]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e0766
mov eax, dword [ebp + 8]
mov dword [eax], 0x10
mov eax, dword [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x28]
push eax
push 0
push 0
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0xa0]
mov dl, byte [eax + 0x10]
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 8]
call fcn.005cd8fc
test al, al
je 0x5e079b
mov eax, dword [ebp + 8]
mov dword [eax], 0x11
mov eax, dword [ebp + 8]
cmp dword [eax], 0
je 0x5e0800
mov eax, dword [ebp + 8]
cmp dword [eax], 3
je 0x5e07b3
mov eax, dword [ebp + 8]
cmp dword [eax], 0x14
jne 0x5e07f0
mov eax, dword [ebp - 8]
cmp word [eax + 0xa82], 0
je 0x5e07f0
mov byte [ebp - 0x71], 0
mov eax, dword [ebp - 0x28]
push eax
lea eax, [ebp - 0x71]
push eax
mov ebx, dword [ebp - 8]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 8]
mov eax, dword [ebx + 0xa84]
call dword [ebx + 0xa80]
cmp byte [ebp - 0x71], 0
je 0x5e07f0
mov eax, dword [ebp + 8]
xor edx, edx
mov dword [eax], edx
jmp 0x5e080f
mov eax, dword [ebp + 8]
cmp dword [eax], 0
je 0x5e080f
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x2c], eax
jmp 0x5e080f
inc dword [ebp - 0x30]
dec dword [ebp - 0x9c]
jne 0x5df40f
mov eax, dword [ebp - 0x2c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4