Function at 0x437940
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x492b28
mov eax, dword fs:[0]
push eax
sub esp, 0x74
push ebx
push esi
push edi
mov eax, dword [0x4c72d0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov eax, dword [ebx + 0x3c7a4]
cmp eax, 0x154
jg 0x4397cd
je 0x43977c
cmp eax, 0x131
jg 0x4396e3
je 0x4396a4
cmp eax, 0xc8
jg 0x43968c
je 0x4382f4
test eax, eax
je 0x438173
cmp eax, 0x64
jne case.0x437cc3.9
call fcn.0040c700
mov ecx, dword [ebx + 0xecec]
mov esi, eax
mov edx, dword [0x4dbba8]
cmp edx, ecx
cmovne edx, ecx
mov dword [0x4dbba8], edx
mov edx, dword [ebx + 0xe838]
mov ecx, edx
mov eax, dword [ebx + 0xe834]
shr ecx, 1
shr eax, 1
xor al, cl
and al, cl
test al, 1
jne 0x437a01
mov eax, dword [ebx + 0xe834]
shr eax, 0xd
shr edx, 0xd
xor dl, al
and dl, al
test dl, 1
je 0x437a25
cmp dword [0x4db044], 0
jne 0x437a11
mov esi, 1
jmp 0x437a25
mov dword [0x4db044], 0
mov dword [ebx + 0x3c7a4], 0xc8
mov edi, dword [ebx + 0xe834]
mov ecx, edi
mov edx, dword [ebx + 0xe838]
mov eax, edx
shr eax, 0x14
shr ecx, 0x14
xor al, cl
and al, cl
mov ecx, edi
mov edi, dword [0x4962ac]
test al, 1
mov eax, 5
cmovne esi, eax
shr ecx, 0x10
mov eax, edx
mov dword [ebp - 0x1c], esi
shr eax, 0x10
xor al, cl
and al, cl
test al, 1
jne 0x437a81
mov eax, dword [ebx + 0xe834]
shr eax, 0x12
shr edx, 0x12
xor dl, al
and dl, al
test dl, 1
jne 0x437a81
mov esi, dword [0x4dbb8c]
jmp 0x437ae0
mov esi, dword [0x4dbb8c]
mov eax, 0x16
dec esi
cmovs esi, eax
mov eax, esi
shl eax, 4
mov ecx, dword [eax + 0x4d5a58]
mov eax, dword [eax + 0x4d5a5c]
push eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x48]
push ecx
mov dword [ebp - 0x40], ecx
lea ecx, [ebx + 0x2f0]
push eax
call fcn.00456db0
lea edx, [ebp - 0x40]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0x40], ecx
lea ecx, [ebx + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0x3c], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
call edi
mov dword [0x4dbb8c], esi
mov edx, dword [ebx + 0xe838]
mov eax, edx
mov ecx, dword [ebx + 0xe834]
shr ecx, 0x11
shr eax, 0x11
xor al, cl
and al, cl
test al, 1
jne 0x437b11
mov eax, dword [ebx + 0xe834]
shr eax, 0x13
shr edx, 0x13
xor dl, al
and dl, al
test dl, 1
je 0x437b6a
xor eax, eax
inc esi
cmp esi, 0x16
cmovg esi, eax
mov eax, esi
shl eax, 4
mov ecx, dword [eax + 0x4d5a58]
mov eax, dword [eax + 0x4d5a5c]
push eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x50]
push ecx
mov dword [ebp - 0x40], ecx
lea ecx, [ebx + 0x2f0]
push eax
call fcn.00456db0
lea edx, [ebp - 0x40]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0x40], ecx
lea ecx, [ebx + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0x3c], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
call edi
mov dword [0x4dbb8c], esi
mov edx, dword [ebx + 0xe834]
mov ecx, edx
mov eax, dword [ebx + 0xe838]
shr ecx, 0x1f
shr eax, 0x1f
xor al, cl
and al, cl
test al, 1
je 0x437ba1
push 0x13
mov ecx, ebx
call fcn.00425060
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0xecec]
or edi, 0xffffffff
add eax, 0xffffffe2
cmp eax, 9
cmovbe edi, eax
test edx, 0x5001
setne byte [ebp - 0xd]
cmp edi, dword [0x4dbb90]
je 0x437cad
push dword [0x4db608]
mov ecx, 0x4f55d0
push dword [0x4dbb74]
call fcn.0042df80
test eax, eax
je 0x437bea
mov dword [eax + 0x34], 0xffffffff
cmp edi, 0xffffffff
je 0x437c9f
cmp byte [edi + 0x4db060], 0
mov eax, dword [0x4db04c]
lea eax, [eax + eax*4]
lea eax, [edi + eax*2]
mov dword [ebp - 0x20], eax
je 0x437c9f
mov edi, edi
cmp byte [ebx + 0xad9c4], 0
jne 0x437c10
lea ecx, [ebx + 0x35d4]
call fcn.0044ed30
mov ecx, dword [ebp - 0x20]
lea edx, [ebx + 0x35d4]
call fcn.0041f220
test al, al
je 0x437c9f
push 0
mov edx, 0x4dbb74
mov ecx, 0x4db608
call fcn.0040c0c0
mov esi, eax
add esp, 4
cmp esi, 0xffffffff
je 0x437c9f
push 0
push 0
push 0
push 0xd
push esi
push 0
mov ecx, ebx
call fcn.0042de20
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13448], 0
je 0x437c9f
mov dword [eax + ebx + 0x13494], 0xff
mov dword [eax + ebx + 0x1349c], 0xff
mov dword [eax + ebx + 0x134a4], 0xff
mov dword [eax + ebx + 0x13484], 0x20
mov al, byte [ebp - 0xd]
mov dword [0x4dbb90], edi
mov byte [0x4dbb94], al
mov esi, dword [ebp - 0x1c]
lea eax, [esi - 1]
cmp eax, 0x34
ja case.0x437cc3.9
movzx eax, byte [eax + 0x439d5c]
jmp dword [eax*4 + 0x439d2c]
push 2
mov ecx, ebx
call fcn.0043e920
mov dword [ebx + 0x3c7a4], 0x384
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [0x4db041], 0
jne case.0x437cc3.9
push 1
mov ecx, ebx
call fcn.0043e920
cmp byte [0x4db040], 0
sete byte [0x4db040]
cmp byte [ebx + 0xad9c4], 0
jne 0x437d13
lea ecx, [ebx + 0xecd8]
call fcn.0040ed00
push dword [0x4db04c]
movzx eax, byte [0x4db040]
mov ecx, ebx
push eax
call fcn.0040e170
mov dword [ebx + 0x3c7a4], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push ecx
mov ecx, ebx
call fcn.0041ea30
mov dword [ebx + 0x3c7a4], 0x1f4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebx + 0x3c7a4], 0x320
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 0xad76d], 0
je 0x437dbd
mov dword [ebx + 0x3c7a4], 0x35c
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 7
push 0
mov ecx, ebx
call fcn.004375b0
mov dword [ebx + 0x3c7a4], 0x352
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x15
mov ecx, ebx
call fcn.0043ee10
mov dword [0x4db044], 1
mov dword [0x4db048], 0
mov dword [ebx + 0x3c7a4], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x13
mov ecx, ebx
call fcn.0043ee10
mov dword [0x4db044], 2
mov dword [0x4db048], 0
mov dword [ebx + 0x3c7a4], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x18
mov ecx, ebx
call fcn.0043ee10
mov dword [0x4db044], 3
mov dword [0x4db048], 0
mov dword [ebx + 0x3c7a4], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
mov ecx, ebx
call fcn.0043e920
add esi, 0xfffffff6
cmp dword [0x4db04c], esi
je case.0x437cc3.9
mov dword [0x4db04c], esi
lea ecx, [ecx]
cmp byte [ebx + 0xad9c4], 0
jne 0x437eb0
jmp 0x437d1c
push 1
mov ecx, ebx
call fcn.0043e920
mov eax, dword [0x4db044]
add esi, 0xffffffe2
cmp eax, 3
ja case.0x437cc3.9
jmp dword [eax*4 + 0x439d94]
cmp byte [0x4db040], 0
je 0x437f76
cmp dword [0x4db04c], 0xa
je case.0x437cc3.9
cmp byte [esi + 0x4db060], 0
je 0x437f1e
cmp byte [esi + 0x4db094], 0
jne case.0x437cc3.9
cmp byte [ebx + 0xad76b], 0
jne 0x437f27
push 5
push 4
jmp 0x437f4d
cmp byte [ebx + 0xad767], 0
je 0x437f49
mov dword [ebx + 0x3c7a4], 0x131
mov dword [0x4db050], esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push 2
mov ecx, ebx
call fcn.004375b0
mov dword [ebx + 0x3c7a4], 0x12c
mov dword [0x4db050], esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x4db060], 0
je case.0x437cc3.9
mov dword [0x4db050], esi
cmp byte [ebx + 0xad768], 0
je 0x437fae
mov dword [ebx + 0x3c7a4], 0x19a
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 2
push 3
mov ecx, ebx
call fcn.004375b0
mov dword [ebx + 0x3c7a4], 0x190
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x4db048]
sub eax, 0
je 0x43802b
dec eax
jne case.0x437cc3.9
cmp byte [esi + 0x4db060], al
je 0x437ffe
cmp byte [esi + 0x4db094], al
jne case.0x437cc3.9
push 5
jmp 0x438000
push 1
push 5
mov ecx, ebx
call fcn.004375b0
mov dword [0x4db050], esi
mov dword [ebx + 0x3c7a4], 0x136
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x4db060], 0
je case.0x437cc3.9
push 0x16
mov ecx, ebx
call fcn.0043ee10
mov ecx, dword [0x4db04c]
mov dword [0x4db058], ecx
mov dword [0x4db05c], esi
mov dword [0x4db048], 1
lea eax, [ecx + ecx*4]
lea eax, [esi + eax*2]
mov dword [0x4db054], eax
mov dword [ebx + 0x3c7a4], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x4db048]
sub eax, 0
je 0x4380da
dec eax
jne case.0x437cc3.9
cmp byte [esi + 0x4db060], al
je 0x4380ad
cmp byte [esi + 0x4db094], al
jne case.0x437cc3.9
push 5
jmp 0x4380af
push 1
push 5
mov ecx, ebx
call fcn.004375b0
mov dword [0x4db050], esi
mov dword [ebx + 0x3c7a4], 0x140
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x4db060], 0
je case.0x437cc3.9
cmp byte [esi + 0x4db094], 0
jne case.0x437cc3.9
push 0x14
jmp 0x43803a
cmp dword [0x4db044], 0
jne case.0x437cc3.9
add esi, 0xffffffd6
cmp byte [esi + 0x4db094], 0
jne case.0x437cc3.9
mov dword [0x4db050], esi
cmp byte [ebx + 0xad770], 0
je 0x438143
mov dword [ebx + 0x3c7a4], 0x154
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x19
mov ecx, ebx
call fcn.0043ee10
push 0xa
push 5
mov ecx, ebx
call fcn.004375b0
mov dword [ebx + 0x3c7a4], 0x14a
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 0xad9c4], 0
jne 0x438173
call fcn.0044aca0
or eax, 0xffffffff
mov ecx, 0x15b
mov edi, 0x4db0a0
rep stosd dword es:[edi], eax
or eax, eax
mov ecx, 0x15b
push 0
mov edi, 0x4db60c
rep stosd dword es:[edi], eax
push 8
mov dword [0x4dbb90], 0xffffffff
mov ecx, ebx
mov dword [0x4dbb7c], 0
mov dword [0x4dbb80], 0
mov dword [0x4dbb84], 0
mov byte [0x4dbb94], 0
mov dword [0x4db044], 0
mov eax, dword [ebx + 0xad8c8]
push str.SLChip.kg
mov dword [0x4db04c], eax
call fcn.00422a90
mov ecx, ebx
call fcn.00425a20
lea ecx, [ebp - 0x80]
mov word [ebx + 0xad9ed], 0
mov byte [ebx + 0xad9ef], 0
call fcn.0045f9a0
lea ecx, [ebp - 0x80]
mov dword [ebx + 0x3c8b8], 0
mov dword [ebp - 4], 0xffffffff
call fcn.0045fb00
cmp byte [ebx + 0xad8e3], 0
jne 0x43823a
mov ecx, ebx
call fcn.00443b80
mov ecx, dword [ebx + 0xe6d0]
test ecx, ecx
je 0x438249
mov eax, dword [ecx]
call dword [eax + 0x14]
mov dword [0x4dbb8c], 0xffffffff
mov esi, dword [ebx + 0xad8dc]
mov edi, dword [ebx + 0xad8cc]
call dword [0x4963a0]
mov ecx, eax
mov eax, 0x10624dd3
sub ecx, esi
mul ecx
shr edx, 6
add edx, edi
cmp edx, 0x8ca0
jge 0x438281
xor eax, eax
jmp 0x4382a1
cmp edx, 0x46500
jl 0x438290
mov eax, 8
jmp 0x4382a1
mov eax, 0x7482296b
imul edx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
push dword [0x4db04c]
mov dword [0x4dbb88], eax
mov ecx, ebx
movzx eax, byte [0x4db040]
push eax
call fcn.0040e170
mov byte [ebx + 0xed08], 1
mov dword [0x4dbba8], 0xffffffff
call fcn.004378b0
mov byte [ebx + 0xada05], 1
mov dword [ebx + 0x3c7a4], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 0xad9c4], 0
jne 0x4382f4
cmp byte [0x4db040], 0
push 0
push 0xc
je 0x438311
push str.SLBaseS.kg
jmp 0x438316
push str.SLBaseL.kg
call fcn.00422a90
mov ecx, ebx
call fcn.00420660
mov esi, 0x4db0a0
mov eax, dword [esi]
cmp eax, 0xffffffff
je 0x438345
push dword [esi + 0x56c]
mov ecx, 0x4f55d0
push eax
call fcn.0042ddc0
mov dword [esi], 0xffffffff
add esi, 4
cmp esi, 0x4db60c
jl 0x438327
mov eax, dword [0x4db0a0]
cmp eax, 0xffffffff
je 0x438382
cmp eax, 0x18f
ja 0x438378
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [0x4db0a0], 0xffffffff
mov esi, 0x508a18
xor edi, edi
lea esp, [esp]
cmp byte [esi], 0
je 0x4383a9
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x438390
or edi, 0xffffffff
jmp 0x4383d2
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045fbb0
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [0x4db0a0], edi
cmp edi, 0xffffffff
je 0x4383f9
push 0
push 0
push 0
push 0xc
push edi
push 0
mov ecx, ebx
mov dword [0x4db60c], 0
call fcn.0042de20
mov eax, dword [0x4db608]
cmp eax, 0xffffffff
je 0x43842b
cmp eax, 0x18f
ja 0x438421
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [0x4db608], 0xffffffff
mov esi, 0x508a18
xor edi, edi
cmp byte [esi], 0
je 0x43844b
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x438432
or edi, 0xffffffff
jmp 0x438474
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045fbb0
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [0x4db608], edi
cmp edi, 0xffffffff
je 0x4384a4
imul eax, edi, 0xcc
mov dword [0x4dbb74], 0
add eax, 0x508a18
je 0x4384a4
mov dword [eax + 0x34], 0xffffffff
mov dword [eax + 0x3c], 0x20
mov eax, dword [0x4db0a8]
cmp eax, 0xffffffff
je 0x4384d6
cmp eax, 0x18f
ja 0x4384cc
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [0x4db0a8], 0xffffffff
mov esi, 0x508a18
xor edi, edi
lea ecx, [ecx]
cmp byte [esi], 0
je 0x4384f9
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x4384e0
or edi, 0xffffffff
jmp 0x438522
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045fbb0
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [0x4db0a8], edi
cmp edi, 0xffffffff
je 0x438564
mov eax, dword [0x4db04c]
mov dword [0x4db614], 0
lea ecx, [eax*8]
shl eax, 4
add eax, 0x4d5d68
push eax
push dword [ecx + 0x4d0efc]
push dword [ecx + 0x4d0ef8]
mov ecx, ebx
push 8
push edi
push 0
call fcn.0042de20
xor ecx, ecx
mov dword [ebp - 0x24], 0xa
mov dword [ebp - 0x18], ecx
mov esi, ecx
mov byte [ecx + 0x4db060], 0
shl esi, 5
add esi, ecx
mov dword [ecx*4 + 0x4db06c], 0
cmp ecx, 9
ja 0x4385b2
lea eax, [ecx + 0x1e]
push eax
lea ecx, [ebx + 0xecd8]
call fcn.0040f2b0
mov eax, dword [ebp - 0x18]
lea ecx, [ebx + 0xecd8]
add eax, 0x2a
push eax
call fcn.0040f2b0
mov ecx, dword [ebp - 0x18]
mov eax, dword [0x4db04c]
imul edx, ecx, 0x3d
lea eax, [eax + eax*4]
lea eax, [ecx + eax*2]
mov dword [ebp - 0x38], eax
add edx, 0x31
lea eax, [eax + eax*8]
mov dword [ebp - 0x14], edx
lea edi, [ebx + eax*8]
mov eax, dword [edi + 0x66bcc]
mov dword [ecx*4 + 0x4db06c], eax
cmp byte [edi + 0x66b88], 0
mov dword [ebp - 0x1c], edi
je 0x4395bc
mov byte [ecx + 0x4db060], 1
mov al, byte [edi + 0x66b89]
mov byte [ecx + 0x4db094], al
mov eax, dword [esi*4 + 0x4db0e8]
cmp eax, 0xffffffff
je 0x438634
cmp eax, 0x18f
ja 0x438629
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db0e8], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
mov edi, edi
cmp byte [edi], 0
je 0x43865b
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438640
or eax, 0xffffffff
jmp 0x43868a
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x14]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db0e8], eax
cmp eax, 0xffffffff
je 0x4386b8
push 0x4d5a38
push edx
push 0x80
push 8
push eax
push 0
mov ecx, ebx
mov dword [esi*4 + 0x4db654], 0
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db0ec]
cmp eax, 0xffffffff
je 0x4386ed
cmp eax, 0x18f
ja 0x4386e2
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db0ec], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x438712
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x4386f7
or eax, 0xffffffff
jmp 0x43873e
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db0ec], eax
cmp eax, 0xffffffff
je 0x43876e
push 0x4d5a48
push dword [ebp - 0x14]
mov ecx, ebx
mov dword [esi*4 + 0x4db658], 0
push 0x480
push 8
push eax
push 0
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db0e4]
cmp eax, 0xffffffff
je 0x4387a3
cmp eax, 0x18f
ja 0x438798
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db0e4], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
lea ecx, [ecx]
cmp byte [edi], 0
je 0x4387cb
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x4387b0
or eax, 0xffffffff
jmp 0x4387f7
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db0e4], eax
cmp eax, 0xffffffff
je 0x4388a3
mov edi, eax
mov dword [esi*4 + 0x4db650], 0
cmp edi, 0xffffffff
je 0x4388a3
mov eax, dword [ebp - 0x1c]
mov ecx, ebx
add eax, 0x66ba4
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x1cf
push 2
push edi
push 0
call fcn.0042dfc0
imul eax, edi, 0xcc
cmp byte [eax + ebx + 0x13448], 0
je 0x438863
cmp dword [eax + ebx + 0x134f4], 1
jne 0x438863
mov dword [eax + ebx + 0x134f8], 0
mov ecx, dword [esi*4 + 0x4db0e4]
cmp ecx, 0xffffffff
je 0x4388a3
cmp dword [esi*4 + 0x4db650], 0
mov eax, 0x508a18
mov edx, 0x51c9a4
cmovne eax, edx
imul ecx, ecx, 0xcc
add ecx, eax
je 0x4388a3
mov dword [ecx + 0x4c], 0xff
mov dword [ecx + 0x54], 0xff
mov dword [ecx + 0x5c], 0xff
mov eax, dword [ebp - 0x1c]
mov ecx, 0x2710
movzx eax, word [eax + 0x66b8a]
cdq
idiv ecx
mov eax, 0x10624dd3
mov ecx, 0xa
mov edi, edx
imul edi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x28], eax
mov eax, 0x51eb851f
imul edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cdq
idiv ecx
mov eax, 0x66666667
mov dword [ebp - 0x2c], edx
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, ecx
cdq
idiv dword [ebp - 0x24]
lea eax, [ecx + ecx*4]
add eax, eax
mov dword [ebp - 0x30], edx
sub edi, eax
mov eax, dword [esi*4 + 0x4db0f0]
mov dword [ebp - 0x34], edi
cmp eax, 0xffffffff
je 0x438940
cmp eax, 0x18f
ja 0x438935
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db0f0], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
lea ebx, [ebx]
cmp byte [edi], 0
je 0x43896b
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438950
or eax, 0xffffffff
jmp 0x438997
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db0f0], eax
cmp eax, 0xffffffff
je 0x4389d9
mov ecx, eax
mov dword [esi*4 + 0x4db65c], 0
cmp ecx, 0xffffffff
je 0x4389d9
mov eax, dword [ebp - 0x28]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x214
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db0f4]
cmp eax, 0xffffffff
je 0x438a0e
cmp eax, 0x18f
ja 0x438a03
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db0f4], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x438a33
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438a18
or eax, 0xffffffff
jmp 0x438a5f
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db0f4], eax
cmp eax, 0xffffffff
je 0x438aa1
mov ecx, eax
mov dword [esi*4 + 0x4db660], 0
cmp ecx, 0xffffffff
je 0x438aa1
mov eax, dword [ebp - 0x2c]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x230
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db0f8]
cmp eax, 0xffffffff
je 0x438ad6
cmp eax, 0x18f
ja 0x438acb
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db0f8], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x438afb
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438ae0
or eax, 0xffffffff
jmp 0x438b27
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db0f8], eax
cmp eax, 0xffffffff
je 0x438b69
mov ecx, eax
mov dword [esi*4 + 0x4db664], 0
cmp ecx, 0xffffffff
je 0x438b69
mov eax, dword [ebp - 0x30]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x24c
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db0fc]
cmp eax, 0xffffffff
je 0x438b9e
cmp eax, 0x18f
ja 0x438b93
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db0fc], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x438bc3
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438ba8
or eax, 0xffffffff
jmp 0x438bef
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db0fc], eax
cmp eax, 0xffffffff
je 0x438c31
mov ecx, eax
mov dword [esi*4 + 0x4db668], 0
cmp ecx, 0xffffffff
je 0x438c31
mov eax, dword [ebp - 0x34]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x268
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [ebp - 0x1c]
movzx edi, word [eax + 0x66b8c]
mov eax, 0x66666667
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [ebp - 0x34], ecx
lea eax, [ecx + ecx*4]
add eax, eax
sub edi, eax
mov eax, dword [esi*4 + 0x4db100]
mov dword [ebp - 0x30], edi
cmp eax, 0xffffffff
je 0x438c8e
cmp eax, 0x18f
ja 0x438c83
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db100], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x438cb3
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438c98
or eax, 0xffffffff
jmp 0x438ce2
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x34]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db100], eax
cmp eax, 0xffffffff
je 0x438d22
mov edx, eax
mov dword [esi*4 + 0x4db66c], 0
cmp edx, 0xffffffff
je 0x438d22
mov eax, dword [ebp - 0x14]
shl ecx, 4
add eax, 0xc
add ecx, 0x4d5bc8
push ecx
push eax
push 0x2b3
push 8
push edx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db104]
cmp eax, 0xffffffff
je 0x438d57
cmp eax, 0x18f
ja 0x438d4c
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db104], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x438d7c
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438d61
or eax, 0xffffffff
jmp 0x438da8
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db104], eax
cmp eax, 0xffffffff
je 0x438dea
mov ecx, eax
mov dword [esi*4 + 0x4db670], 0
cmp ecx, 0xffffffff
je 0x438dea
mov eax, dword [ebp - 0x30]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x2cf
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [ebp - 0x1c]
movzx edi, word [eax + 0x66b90]
mov eax, 0x66666667
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [ebp - 0x34], ecx
lea eax, [ecx + ecx*4]
add eax, eax
sub edi, eax
mov eax, dword [esi*4 + 0x4db108]
mov dword [ebp - 0x30], edi
cmp eax, 0xffffffff
je 0x438e47
cmp eax, 0x18f
ja 0x438e3c
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db108], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x438e6c
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438e51
or eax, 0xffffffff
jmp 0x438e9b
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x34]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db108], eax
cmp eax, 0xffffffff
je 0x438edb
mov edx, eax
mov dword [esi*4 + 0x4db674], 0
cmp edx, 0xffffffff
je 0x438edb
mov eax, dword [ebp - 0x14]
shl ecx, 4
add eax, 0xc
add ecx, 0x4d5bc8
push ecx
push eax
push 0x31c
push 8
push edx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db10c]
cmp eax, 0xffffffff
je 0x438f10
cmp eax, 0x18f
ja 0x438f05
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db10c], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
lea ebx, [ebx]
cmp byte [edi], 0
je 0x438f3b
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x438f20
or eax, 0xffffffff
jmp 0x438f67
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db10c], eax
cmp eax, 0xffffffff
je 0x438fa9
mov ecx, eax
mov dword [esi*4 + 0x4db678], 0
cmp ecx, 0xffffffff
je 0x438fa9
mov eax, dword [ebp - 0x30]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x338
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [ebp - 0x1c]
movzx edi, word [eax + 0x66b92]
mov eax, 0x66666667
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [ebp - 0x34], ecx
lea eax, [ecx + ecx*4]
add eax, eax
sub edi, eax
mov eax, dword [esi*4 + 0x4db110]
mov dword [ebp - 0x30], edi
cmp eax, 0xffffffff
je 0x439006
cmp eax, 0x18f
ja 0x438ffb
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db110], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x43902b
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x439010
or eax, 0xffffffff
jmp 0x43905a
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x34]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db110], eax
cmp eax, 0xffffffff
je 0x43909a
mov edx, eax
mov dword [esi*4 + 0x4db67c], 0
cmp edx, 0xffffffff
je 0x43909a
mov eax, dword [ebp - 0x14]
shl ecx, 4
add eax, 0xc
add ecx, 0x4d5bc8
push ecx
push eax
push 0x3b3
push 8
push edx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db114]
cmp eax, 0xffffffff
je 0x4390cf
cmp eax, 0x18f
ja 0x4390c4
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db114], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
lea esp, [esp]
cmp byte [edi], 0
je 0x4390fb
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x4390e0
or eax, 0xffffffff
jmp 0x439127
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db114], eax
cmp eax, 0xffffffff
je 0x439169
mov ecx, eax
mov dword [esi*4 + 0x4db680], 0
cmp ecx, 0xffffffff
je 0x439169
mov eax, dword [ebp - 0x30]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x3cf
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [ebp - 0x1c]
movzx edi, word [eax + 0x66b94]
mov eax, 0x66666667
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [ebp - 0x34], ecx
lea eax, [ecx + ecx*4]
add eax, eax
sub edi, eax
mov eax, dword [esi*4 + 0x4db118]
mov dword [ebp - 0x30], edi
cmp eax, 0xffffffff
je 0x4391c6
cmp eax, 0x18f
ja 0x4391bb
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db118], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x4391eb
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x4391d0
or eax, 0xffffffff
jmp 0x43921a
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x34]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db118], eax
cmp eax, 0xffffffff
je 0x43925a
mov edx, eax
mov dword [esi*4 + 0x4db684], 0
cmp edx, 0xffffffff
je 0x43925a
mov eax, dword [ebp - 0x14]
shl ecx, 4
add eax, 0xc
add ecx, 0x4d5bc8
push ecx
push eax
push 0x3f4
push 8
push edx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db11c]
cmp eax, 0xffffffff
je 0x43928f
cmp eax, 0x18f
ja 0x439284
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db11c], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
lea esp, [esp]
cmp byte [edi], 0
je 0x4392bb
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x4392a0
or eax, 0xffffffff
jmp 0x4392e7
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db11c], eax
cmp eax, 0xffffffff
je 0x439329
mov ecx, eax
mov dword [esi*4 + 0x4db688], 0
cmp ecx, 0xffffffff
je 0x439329
mov eax, dword [ebp - 0x30]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x410
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [ebp - 0x1c]
movzx edi, word [eax + 0x66b96]
mov eax, 0x66666667
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [ebp - 0x34], ecx
lea eax, [ecx + ecx*4]
add eax, eax
sub edi, eax
mov eax, dword [esi*4 + 0x4db120]
mov dword [ebp - 0x30], edi
cmp eax, 0xffffffff
je 0x439386
cmp eax, 0x18f
ja 0x43937b
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db120], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x4393ab
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x439390
or eax, 0xffffffff
jmp 0x4393da
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x34]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db120], eax
cmp eax, 0xffffffff
je 0x43941a
mov edx, eax
mov dword [esi*4 + 0x4db68c], 0
cmp edx, 0xffffffff
je 0x43941a
mov eax, dword [ebp - 0x14]
shl ecx, 4
add eax, 0xc
add ecx, 0x4d5bc8
push ecx
push eax
push 0x435
push 8
push edx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [esi*4 + 0x4db124]
cmp eax, 0xffffffff
je 0x43944f
cmp eax, 0x18f
ja 0x439444
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db124], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
lea esp, [esp]
cmp byte [edi], 0
je 0x43947b
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x439460
or eax, 0xffffffff
jmp 0x4394a7
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db124], eax
cmp eax, 0xffffffff
je 0x4394e9
mov ecx, eax
mov dword [esi*4 + 0x4db690], 0
cmp ecx, 0xffffffff
je 0x4394e9
mov eax, dword [ebp - 0x30]
shl eax, 4
add eax, 0x4d5bc8
push eax
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
push 0x451
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov eax, dword [ebp - 0x38]
cmp dword [ebx + 0xad8d4], eax
jne 0x4395b9
mov eax, dword [esi*4 + 0x4db158]
cmp eax, 0xffffffff
je 0x43952d
cmp eax, 0x18f
ja 0x439522
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [esi*4 + 0x4db158], 0xffffffff
xor eax, eax
mov edi, 0x508a18
mov dword [ebp - 0x20], eax
cmp byte [edi], 0
je 0x439552
inc eax
add edi, 0xcc
mov dword [ebp - 0x20], eax
cmp eax, 0x190
jl 0x439537
or eax, 0xffffffff
jmp 0x43957e
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045fbb0
mov eax, dword [ebp - 0x20]
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 0
mov dword [esi*4 + 0x4db158], eax
cmp eax, 0xffffffff
je 0x4395b9
mov ecx, eax
mov dword [esi*4 + 0x4db6c4], 0
cmp ecx, 0xffffffff
je 0x4395b9
mov eax, dword [ebp - 0x14]
push 0x4d5a18
add eax, 0xd
push eax
push 0x1a6
push 8
push ecx
push 0
mov ecx, ebx
call fcn.0042de20
mov ecx, dword [ebp - 0x18]
mov eax, dword [0x4db044]
cmp eax, 3
ja case.default.0x4395ca
jmp dword [eax*4 + 0x439da4]
cmp byte [0x4db040], 0
je 0x4395f7
cmp byte [ecx + 0x4db060], 0
je 0x439642
cmp byte [ecx + 0x4db094], 0
je 0x439642
jmp case.default.0x4395ca
mov eax, dword [0x4db048]
test eax, eax
jne 0x439602
cmp byte [ecx + 0x4db060], 0
je case.default.0x4395ca
jmp 0x439642
cmp eax, 1
jne case.default.0x4395ca
mov eax, dword [0x4db04c]
cmp eax, dword [0x4db058]
jne 0x43961c
cmp dword [0x4db05c], ecx
je case.default.0x4395ca
cmp byte [ecx + 0x4db060], 0
je 0x439642
jmp 0x439639
mov eax, dword [0x4db048]
test eax, eax
jne 0x439602
cmp byte [ecx + 0x4db060], 0
je case.default.0x4395ca
cmp byte [ecx + 0x4db094], 0
jne case.default.0x4395ca
push ecx
mov ecx, ebx
call fcn.0040e1e0
mov ecx, dword [ebp - 0x18]
inc ecx
mov dword [ebp - 0x18], ecx
cmp ecx, 0xa
jl 0x438570
lea ebx, [ebx]
cmp byte [ebx + 0xad9c4], 0
jne 0x439660
mov byte [ebx + 0xada05], 0
mov dword [ebx + 0x3c7a4], 0x64
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x12c
jne case.0x437cc3.9
cmp dword [0x5a55c8], 0
je 0x4382d8
mov eax, dword [0x4db04c]
push 0
lea ecx, [eax + eax*4]
mov eax, dword [0x4db050]
lea eax, [eax + ecx*2]
mov ecx, ebx
push eax
call fcn.0041fb70
push 0x1c
mov ecx, ebx
call fcn.0043ee10
mov dword [ebx + 0x3c7a4], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
sub eax, 0x136
je 0x43974f
sub eax, 0xa
je 0x43971c
sub eax, 0xa
jne case.0x437cc3.9
cmp dword [0x5a55c8], eax
jne 0x43977c
mov dword [ebx + 0x3c7a4], 0x64
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x5a55c8], 1
jne 0x439670
mov eax, dword [0x4db04c]
lea ecx, [eax + eax*4]
mov eax, dword [0x4db050]
lea eax, [eax + ecx*2]
mov ecx, ebx
push eax
push dword [0x4db054]
call fcn.00420ac0
push dword [0x4db054]
jmp 0x43978d
cmp dword [0x5a55c8], 1
jne 0x439670
mov eax, dword [0x4db04c]
lea ecx, [eax + eax*4]
mov eax, dword [0x4db050]
lea eax, [eax + ecx*2]
mov ecx, ebx
push eax
push dword [0x4db054]
call fcn.00420ac0
jmp 0x439794
mov eax, dword [0x4db04c]
lea ecx, [eax + eax*4]
mov eax, dword [0x4db050]
lea eax, [eax + ecx*2]
push eax
mov ecx, ebx
call fcn.00421070
push 0x1c
mov ecx, ebx
call fcn.0043ee10
mov dword [0x4db044], 0
mov dword [0x4db048], 0
mov dword [ebx + 0x3c7a4], 0xc8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x320
jg 0x439ae7
je 0x439a12
sub eax, 0x190
je 0x439888
sub eax, 0xa
je 0x439895
sub eax, 0x5a
jne case.0x437cc3.9
cmp dword [0x5a55c8], 1
jne 0x439670
jmp 0x439810
cmp byte [ebx + 0xad9c4], 0
jne 0x439810
lea ecx, [ebx + 0x28b4]
call fcn.0044ed30
lea ecx, [ebx + 0x3334]
call fcn.0044ed30
mov esi, 0x4db0a0
mov eax, dword [esi]
cmp eax, 0xffffffff
je 0x439852
push dword [esi + 0x56c]
mov ecx, 0x4f55d0
push eax
call fcn.0042ddc0
mov dword [esi], 0xffffffff
add esi, 4
cmp esi, 0x4db60c
jl 0x439834
mov eax, dword [ebx + 0x218]
lea ecx, [ebx + 0x218]
call dword [eax + 0x10]
mov dword [ebx + 0x3c7a4], 0x3e7
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x5a55c8], 0
je 0x439670
mov eax, dword [0x4db04c]
lea ecx, [eax + eax*4]
mov eax, dword [0x4db050]
lea esi, [eax + ecx*2]
mov ecx, ebx
call fcn.00425110
call fcn.00425290
push esi
mov ecx, ebx
call fcn.00420260
mov ecx, ebx
test al, al
jne 0x4398e5
push 0x4af378
call fcn.004489b0
mov dword [ebx + 0x3c7a4], 0x64
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.004258b0
lea ebx, [ebx]
cmp byte [ebx + 0xad9c4], 0
jne 0x4398f0
mov esi, 0x4db0a0
mov edi, edi
mov eax, dword [esi]
cmp eax, 0xffffffff
je 0x43991e
push dword [esi + 0x56c]
mov ecx, 0x4f55d0
push eax
call fcn.0042ddc0
mov dword [esi], 0xffffffff
add esi, 4
cmp esi, 0x4db60c
jl 0x439900
mov eax, dword [0x4db04c]
mov dword [ebx + 0xad8c8], eax
mov eax, dword [ebx + 0x3c7dc]
cmp eax, 0xffffffff
je 0x439949
push 0
push eax
mov ecx, ebx
call fcn.00422140
lea ecx, [ebx + 0x28b4]
call fcn.0044ed30
lea ecx, [ebx + 0x3334]
call fcn.0044ed30
lea ecx, [ebx + 0x35d4]
call fcn.0044ed30
push 0x1b
mov ecx, ebx
call fcn.0043ee10
lea ecx, [ebx + 0xecd8]
call fcn.0040ed00
push ecx
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebx + 0xecd8]
call fcn.0040e580
mov ecx, eax
call fcn.0040e5a0
mov edi, eax
mov eax, dword [edi]
test eax, eax
je 0x4399a3
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, str.Message
mov eax, dword [eax + 4]
dec ecx
and ecx, dword [edi + 8]
mov eax, dword [eax + ecx*4]
add eax, 0x10
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4399d8
test cl, cl
je 0x4399d4
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4399d8
add eax, 2
add edx, 2
test cl, cl
jne 0x4399b8
xor eax, eax
jmp 0x4399dd
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4399ec
lea ecx, [ebx + 0xecd8]
call fcn.0040ed00
mov dword [ebx + 0x3c7a4], 0
mov dword [ebx + 0x3c770], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 0xad9c4], 0
jne 0x439a12
mov ecx, 0x4db0a0
mov eax, dword [ecx]
cmp eax, 0xffffffff
je 0x439a78
mov edx, dword [ecx + 0x56c]
sub edx, 0
je 0x439a54
dec edx
jne 0x439a72
cmp eax, 0x18f
ja 0x439a72
imul eax, eax, 0xcc
mov byte [eax + 0x51c9a4], dl
mov dword [eax + 0x51c9a8], 0xffffffff
jmp 0x439a72
cmp eax, 0x18f
ja 0x439a72
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [ecx], 0xffffffff
add ecx, 4
cmp ecx, 0x4db60c
jl 0x439a20
mov eax, dword [0x4db04c]
lea ecx, [ebx + 0x28b4]
mov dword [ebx + 0xad8c8], eax
call fcn.0044ed30
lea ecx, [ebx + 0x3334]
call fcn.0044ed30
lea ecx, [ebx + 0x35d4]
call fcn.0044ed30
lea ecx, [ebx + 0xecd8]
call fcn.0040ed00
mov dword [ebx + 0x3c7a4], 0
mov dword [ebx + 0x3c75c], 8
mov byte [ebx + 0xada05], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
sub eax, 0x352
je 0x439cfd
sub eax, 0xa
je 0x439c20
sub eax, 0x28
jne case.0x437cc3.9
cmp byte [ebx + 0xad9c4], 0
jne 0x439b04
mov ecx, 0x4db0a0
mov eax, dword [ecx]
cmp eax, 0xffffffff
je 0x439b6a
mov edx, dword [ecx + 0x56c]
sub edx, 0
je 0x439b46
dec edx
jne 0x439b64
cmp eax, 0x18f
ja 0x439b64
imul eax, eax, 0xcc
mov byte [eax + 0x51c9a4], dl
mov dword [eax + 0x51c9a8], 0xffffffff
jmp 0x439b64
cmp eax, 0x18f
ja 0x439b64
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [ecx], 0xffffffff
add ecx, 4
cmp ecx, 0x4db60c
jl 0x439b12
mov eax, dword [0x4db04c]
lea ecx, [ebx + 0x28b4]
mov dword [ebx + 0xad8c8], eax
call fcn.0044ed30
lea ecx, [ebx + 0x3334]
call fcn.0044ed30
lea ecx, [ebx + 0x35d4]
call fcn.0044ed30
mov al, byte [0x5a3fb0]
mov ecx, ebx
mov byte [ebx + 0xad9f2], al
mov al, byte [0x5a3fb2]
mov byte [ebx + 0xad9ee], al
mov al, byte [0x5a3fb1]
mov byte [ebx + 0xad9ed], al
mov al, byte [0x5a3fb4]
mov byte [ebx + 0xad9ef], al
movzx eax, byte [0x5a3fb3]
push eax
call fcn.00443560
push ecx
mov ecx, ebx
call fcn.004250a0
mov dword [ebx + 0x3c75c], eax
lea ecx, [ebx + 0xecd8]
add dword [ebx + 0x3c754], 0xfffffffc
call fcn.0040ed00
mov dword [ebx + 0x3c7a4], 0
mov byte [ebx + 0xada05], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 0xad9c4], 0
jne 0x439c20
mov ecx, 0x4db0a0
mov edi, edi
mov eax, dword [ecx]
cmp eax, 0xffffffff
je 0x439c88
mov edx, dword [ecx + 0x56c]
sub edx, 0
je 0x439c64
dec edx
jne 0x439c82
cmp eax, 0x18f
ja 0x439c82
imul eax, eax, 0xcc
mov byte [eax + 0x51c9a4], dl
mov dword [eax + 0x51c9a8], 0xffffffff
jmp 0x439c82
cmp eax, 0x18f
ja 0x439c82
imul eax, eax, 0xcc
mov byte [eax + 0x508a18], 0
mov dword [eax + 0x508a1c], 0xffffffff
mov dword [ecx], 0xffffffff
add ecx, 4
cmp ecx, 0x4db60c
jl 0x439c30
lea ecx, [ebx + 0xecd8]
call fcn.0040ed00
lea ecx, [ebx + 0x28b4]
mov byte [ebx + 0xed08], 0
call fcn.0044ed30
lea ecx, [ebx + 0x3334]
call fcn.0044ed30
lea ecx, [ebx + 0x35d4]
call fcn.0044ed30
mov ecx, ebx
call fcn.00425110
mov dword [ebx + 0x3c75c], 3
mov dword [ebx + 0x3c76c], 0
mov dword [ebx + 0x3c7a4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x5a55c8], 1
mov eax, 0x64
mov ecx, 0x35c
cmove eax, ecx
mov dword [ebx + 0x3c7a4], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret