Function at 0x4287e0
Capabilities:
Check http status code
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4874c8
mov eax, dword fs:[0]
push eax
sub esp, 0x60
push ebx
push esi
push edi
mov eax, dword [0x4ae084]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x357f4]
cmp eax, 0x12c
jg 0x42a312
je 0x42a2d3
sub eax, 0
je 0x42a0f0
sub eax, 0x64
je 0x429ab5
sub eax, 0x64
jne 0x42a4c2
push ebx
call fcn.004159a0
mov edx, ebx
call fcn.00428170
lea edi, [ebx + 0xf6c4]
xor eax, eax
cmp byte [edi], 0
je 0x428867
inc eax
add edi, 0xbc
cmp eax, 0x190
jl 0x428852
jmp 0x4288b9
lea esi, [edi + 0xa4]
mov dword [ebp - 0x30], eax
mov byte [edi], 1
call fcn.0044e3a0
xor eax, eax
cmp dword [ebp - 0x30], 0xffffffff
mov dword [edi + 0xa0], eax
mov dword [edi + 0x9c], eax
mov dword [edi + 4], eax
je 0x4288b9
cmp byte [0x4cded8], al
mov ecx, dword [ebp - 0x30]
setne al
mov edx, ebx
mov dword [0x4ce3f0], ecx
shl eax, 4
add eax, 0x4bc440
push eax
push 0xb
push 9
push 8
push 0
call fcn.00420ee0
lea edi, [ebx + 0xf6c4]
xor eax, eax
cmp byte [edi], 0
je 0x4288d8
inc eax
add edi, 0xbc
cmp eax, 0x190
jl 0x4288c1
xor esi, esi
jmp 0x428933
lea esi, [edi + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [edi], 1
call fcn.0044e3a0
mov ecx, dword [ebp - 0x38]
xor esi, esi
mov dword [edi + 0xa0], esi
mov dword [edi + 0x9c], esi
mov dword [edi + 4], esi
cmp ecx, 0xffffffff
je 0x428933
mov eax, dword [0x4cdedc]
mov edx, eax
shl edx, 4
add edx, 0x4bc4f0
push edx
mov edx, dword [eax*8 + 0x4bc4a4]
mov eax, dword [eax*8 + 0x4bc4a0]
push edx
push eax
push 8
push esi
mov edx, ebx
mov dword [0x4ce3f4], ecx
call fcn.00420ee0
mov dword [ebp - 0x30], esi
mov ebx, dword [ebp - 0x30]
mov esi, dword [ebp + 8]
mov eax, ebx
imul eax, eax, 0x7c
add eax, 0x4cdef0
mov byte [ebx + 0x4cdee4], 0
mov dword [ebp - 0x1c], eax
mov dword [ebx*4 + 0x4ce3c8], 0
cmp ebx, 9
ja 0x42896f
lea ecx, [ebx + 0xd]
push ecx
lea eax, [esi + 0xb0ec]
call fcn.004075a0
mov eax, dword [0x4cdedc]
xor edx, edx
lea eax, [eax + eax*4]
lea eax, [ebx + eax*2]
cmp ebx, 5
setge dl
lea ecx, [eax + eax*8]
mov dword [ebp - 0x28], eax
lea eax, [esi + ecx*8]
mov dword [ebp - 0x2c], eax
mov edi, ebx
mov dword [ebp - 0x14], edx
mov edx, dword [eax + 0x5d68c]
mov dword [ebx*4 + 0x4ce3c8], edx
mov eax, 0xcccccccd
mul ebx
shr edx, 2
mov eax, edx
imul eax, eax, 0x18c
add eax, 0x12
mov dword [ebp - 0x18], eax
lea eax, [edx + edx*4]
sub edi, eax
imul edi, edi, 0x5c
add edi, 0x3f
mov dword [ebp - 0x20], edi
lea eax, [esi + 0xf6c4]
xor ecx, ecx
mov edi, edi
cmp byte [eax], 0
je 0x4289ec
inc ecx
add eax, 0xbc
cmp ecx, 0x190
jl 0x4289d0
mov dword [ebp - 0x38], 0xffffffff
jmp 0x428a64
lea esi, [eax + 0xa4]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], ecx
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x34]
mov esi, eax
mov dword [ebp - 0x38], eax
cmp esi, 0xffffffff
je 0x428a67
cmp dword [ebx*4 + 0x4ce3c8], 8
jl 0x428a3f
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x18]
shl ecx, 4
add ecx, 0x4bc480
push ecx
push edi
push edx
jmp 0x428a50
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
shl eax, 4
add eax, 0x4bc460
push eax
push edi
push ecx
mov edx, dword [ebp + 8]
push 8
push 0
mov ecx, esi
call fcn.00420ee0
mov edx, dword [ebp - 0x1c]
mov dword [edx + 8], esi
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x28]
lea edx, [ecx + ecx*8 + 0xbac9]
mov ecx, dword [ebp + 8]
cmp byte [ecx + edx*8], 0
lea edx, [ecx + edx*8]
jne 0x428acf
cmp eax, 0xffffffff
je 0x428ac6
imul eax, eax, 0xbc
add ecx, 0xf6c4
add eax, ecx
je 0x428ac6
mov ecx, dword [0x4bc470]
mov dword [eax + 0x7c], ecx
mov ecx, dword [0x4bc474]
mov dword [eax + 0x80], ecx
mov ecx, dword [0x4bc478]
mov dword [eax + 0x84], ecx
mov ecx, dword [0x4bc47c]
mov dword [eax + 0x88], ecx
mov dword [eax + 0x34], 0xffffffff
cmp byte [edx], 0
je 0x42967f
mov edx, dword [ebp - 0x30]
mov edi, dword [ebp + 8]
mov byte [edx + 0x4cdee4], 1
lea eax, [edi + 0xf6c4]
xor ebx, ebx
cmp byte [eax], 0
je 0x428afc
inc ebx
add eax, 0xbc
cmp ebx, 0x190
jl 0x428ae4
jmp 0x428bac
lea esi, [eax + 0xa4]
mov dword [ebp - 0x34], eax
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x34]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
cmp ebx, 0xffffffff
je 0x428bac
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x20]
add eax, 0x5d664
push eax
mov eax, dword [edx*4 + 0x49b7c8]
add eax, dword [ebp - 0x18]
add ecx, 0x1d
push ecx
push eax
mov esi, 1
push esi
push ebx
xor eax, eax
mov ecx, edi
call fcn.00421060
mov ecx, ebx
imul ecx, ecx, 0xbc
cmp byte [ecx + edi + 0xf6c4], 0
lea eax, [ecx + edi + 0xf6c4]
je 0x428b92
cmp dword [eax + 0x9c], esi
jne 0x428b92
xor ecx, ecx
mov dword [eax + 0xa0], esi
mov dword [eax + 0x7c], ecx
mov dword [eax + 0x84], ecx
mov dword [eax + 0x80], ecx
jmp 0x428b94
xor ecx, ecx
mov edx, dword [ebp - 0x1c]
mov dword [edx + 4], ebx
cmp eax, ecx
je 0x428bac
mov ecx, 0xff
mov dword [eax + 0x4c], ecx
mov dword [eax + 0x54], ecx
mov dword [eax + 0x5c], ecx
mov eax, dword [ebp - 0x2c]
movzx eax, word [eax + 0x5d64a]
cdq
mov ecx, 0x64
idiv ecx
mov eax, 0x66666667
mov ecx, edx
imul ecx
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea edx, [ebx + ebx*4]
add edx, edx
sub ecx, edx
mov dword [ebp - 0x24], ecx
lea ecx, [edi + 0xf6c4]
xor eax, eax
cmp byte [ecx], 0
je 0x428bf8
inc eax
add ecx, 0xbc
cmp eax, 0x190
jl 0x428be3
jmp 0x428c5d
mov dword [ebp - 0x38], eax
mov eax, ecx
lea esi, [eax + 0xa4]
mov dword [ebp - 0x34], ecx
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x34]
xor ecx, ecx
cmp dword [ebp - 0x38], 0xffffffff
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
je 0x428c5d
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx*4 + 0x49b7d0]
mov eax, dword [ebp - 0x20]
add edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x38]
shl ebx, 4
add ebx, 0x4bbf90
push ebx
add eax, 0x41
push eax
push edx
push 8
push 0
mov ecx, esi
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x18], esi
lea eax, [edi + 0xf6c4]
xor ebx, ebx
cmp byte [eax], 0
je 0x428c7a
inc ebx
add eax, 0xbc
cmp ebx, 0x190
jl 0x428c65
jmp 0x428cdb
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
cmp ebx, 0xffffffff
je 0x428cdb
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
shl eax, 4
add eax, 0x4bbf90
push eax
mov eax, dword [ebp - 0x14]
add edx, 0x41
push edx
mov edx, dword [eax*4 + 0x49b7d0]
mov eax, dword [ebp - 0x18]
lea edx, [edx + eax + 0xc]
push edx
push 8
push ecx
mov ecx, ebx
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x1c], ebx
mov ecx, dword [ebp - 0x2c]
movzx ecx, word [ecx + 0x5d64c]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea edx, [ebx + ebx*4]
add edx, edx
sub ecx, edx
mov dword [ebp - 0x24], ecx
lea ecx, [edi + 0xf6c4]
xor eax, eax
cmp byte [ecx], 0
je 0x428d1d
inc eax
add ecx, 0xbc
cmp eax, 0x190
jl 0x428d08
jmp 0x428d82
mov dword [ebp - 0x34], eax
mov eax, ecx
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], ecx
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp dword [ebp - 0x34], 0xffffffff
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
je 0x428d82
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx*4 + 0x49b7d8]
mov eax, dword [ebp - 0x20]
add edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x34]
shl ebx, 4
add ebx, 0x4bbf90
push ebx
add eax, 0x41
push eax
push edx
push 8
push 0
mov ecx, esi
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x20], esi
lea eax, [edi + 0xf6c4]
xor ebx, ebx
lea ebx, [ebx]
cmp byte [eax], 0
je 0x428da5
inc ebx
add eax, 0xbc
cmp ebx, 0x190
jl 0x428d90
jmp 0x428e06
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
cmp ebx, 0xffffffff
je 0x428e06
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
shl eax, 4
add eax, 0x4bbf90
push eax
mov eax, dword [ebp - 0x14]
add edx, 0x41
push edx
mov edx, dword [eax*4 + 0x49b7d8]
mov eax, dword [ebp - 0x18]
lea edx, [edx + eax + 0xc]
push edx
push 8
push ecx
mov ecx, ebx
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x24], ebx
mov ecx, dword [ebp - 0x2c]
movzx ecx, word [ecx + 0x5d650]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea edx, [ebx + ebx*4]
add edx, edx
sub ecx, edx
mov dword [ebp - 0x24], ecx
lea ecx, [edi + 0xf6c4]
xor eax, eax
cmp byte [ecx], 0
je 0x428e48
inc eax
add ecx, 0xbc
cmp eax, 0x190
jl 0x428e33
jmp 0x428ead
mov dword [ebp - 0x34], eax
mov eax, ecx
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], ecx
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp dword [ebp - 0x34], 0xffffffff
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
je 0x428ead
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx*4 + 0x49b7e0]
mov eax, dword [ebp - 0x20]
add edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x34]
shl ebx, 4
add ebx, 0x4bbf90
push ebx
add eax, 0x41
push eax
push edx
push 8
push 0
mov ecx, esi
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x28], esi
lea eax, [edi + 0xf6c4]
xor ebx, ebx
cmp byte [eax], 0
je 0x428eca
inc ebx
add eax, 0xbc
cmp ebx, 0x190
jl 0x428eb5
jmp 0x428f2c
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
cmp ebx, 0xffffffff
je 0x428f2c
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x14]
shl eax, 4
add eax, 0x4bbf90
push eax
mov eax, dword [edx*4 + 0x49b7e0]
add ecx, 0x41
push ecx
mov ecx, dword [ebp - 0x18]
lea edx, [eax + ecx + 0xc]
push edx
push 8
push 0
mov ecx, ebx
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x2c], ebx
mov ecx, dword [ebp - 0x2c]
movzx ecx, word [ecx + 0x5d652]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea edx, [ebx + ebx*4]
add edx, edx
sub ecx, edx
mov dword [ebp - 0x24], ecx
lea ecx, [edi + 0xf6c4]
xor eax, eax
lea esp, [esp]
cmp byte [ecx], 0
je 0x428f75
inc eax
add ecx, 0xbc
cmp eax, 0x190
jl 0x428f60
jmp 0x428fda
mov dword [ebp - 0x34], eax
mov eax, ecx
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], ecx
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp dword [ebp - 0x34], 0xffffffff
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
je 0x428fda
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx*4 + 0x49b7e8]
mov eax, dword [ebp - 0x20]
add edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x34]
shl ebx, 4
add ebx, 0x4bbf90
push ebx
add eax, 0x41
push eax
push edx
push 8
push 0
mov ecx, esi
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x30], esi
lea eax, [edi + 0xf6c4]
xor ebx, ebx
cmp byte [eax], 0
je 0x428ff7
inc ebx
add eax, 0xbc
cmp ebx, 0x190
jl 0x428fe2
jmp 0x429058
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
cmp ebx, 0xffffffff
je 0x429058
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
shl eax, 4
add eax, 0x4bbf90
push eax
mov eax, dword [ebp - 0x14]
add edx, 0x41
push edx
mov edx, dword [eax*4 + 0x49b7e8]
mov eax, dword [ebp - 0x18]
lea edx, [edx + eax + 0xc]
push edx
push 8
push ecx
mov ecx, ebx
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x34], ebx
mov ecx, dword [ebp - 0x2c]
movzx ecx, word [ecx + 0x5d654]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea edx, [ebx + ebx*4]
add edx, edx
sub ecx, edx
mov dword [ebp - 0x24], ecx
lea ecx, [edi + 0xf6c4]
xor eax, eax
cmp byte [ecx], 0
je 0x42909a
inc eax
add ecx, 0xbc
cmp eax, 0x190
jl 0x429085
jmp 0x4290ff
mov dword [ebp - 0x34], eax
mov eax, ecx
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], ecx
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp dword [ebp - 0x34], 0xffffffff
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
je 0x4290ff
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx*4 + 0x49b7f0]
mov eax, dword [ebp - 0x20]
add edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x34]
shl ebx, 4
add ebx, 0x4bbf90
push ebx
add eax, 0x41
push eax
push edx
push 8
push 0
mov ecx, esi
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x38], esi
lea eax, [edi + 0xf6c4]
xor ebx, ebx
cmp byte [eax], 0
je 0x42911c
inc ebx
add eax, 0xbc
cmp ebx, 0x190
jl 0x429107
jmp 0x42917e
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
cmp ebx, 0xffffffff
je 0x42917e
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x14]
shl eax, 4
add eax, 0x4bbf90
push eax
mov eax, dword [edx*4 + 0x49b7f0]
add ecx, 0x41
push ecx
mov ecx, dword [ebp - 0x18]
lea edx, [eax + ecx + 0xc]
push edx
push 8
push 0
mov ecx, ebx
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x3c], ebx
mov ecx, dword [ebp - 0x2c]
movzx ecx, word [ecx + 0x5d656]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea edx, [ebx + ebx*4]
add edx, edx
sub ecx, edx
mov dword [ebp - 0x24], ecx
lea ecx, [edi + 0xf6c4]
xor eax, eax
jmp 0x4291b0
cmp byte [ecx], 0
je 0x4291c5
inc eax
add ecx, 0xbc
cmp eax, 0x190
jl 0x4291b0
jmp 0x42922a
mov dword [ebp - 0x34], eax
mov eax, ecx
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], ecx
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp dword [ebp - 0x34], 0xffffffff
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
je 0x42922a
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx*4 + 0x49b7f8]
mov eax, dword [ebp - 0x20]
add edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x34]
shl ebx, 4
add ebx, 0x4bbf90
push ebx
add eax, 0x41
push eax
push edx
push 8
push 0
mov ecx, esi
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x40], esi
lea eax, [edi + 0xf6c4]
xor ebx, ebx
cmp byte [eax], 0
je 0x429247
inc ebx
add eax, 0xbc
cmp ebx, 0x190
jl 0x429232
jmp 0x4292a8
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
cmp ebx, 0xffffffff
je 0x4292a8
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
shl eax, 4
add eax, 0x4bbf90
push eax
mov eax, dword [ebp - 0x14]
add edx, 0x41
push edx
mov edx, dword [eax*4 + 0x49b7f8]
mov eax, dword [ebp - 0x18]
lea edx, [edx + eax + 0xc]
push edx
push 8
push ecx
mov ecx, ebx
mov edx, edi
call fcn.00420ee0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x44], ebx
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ecx + 0x5d65c]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
mov edx, ecx
sub edx, eax
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x3c], eax
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*4]
add edx, edx
mov eax, ecx
sub eax, edx
mov dword [ebp - 0x24], eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x3e8
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
sub ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov edi, edx
shr edi, 0x1f
add edi, edx
test edi, edi
jle 0x4293de
mov ecx, dword [ebp + 8]
add ecx, 0xf6c4
xor eax, eax
cmp byte [ecx], 0
je 0x429378
inc eax
add ecx, 0xbc
cmp eax, 0x190
jl 0x429363
jmp 0x4293de
mov dword [ebp - 0x34], eax
mov eax, ecx
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], ecx
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp dword [ebp - 0x34], 0xffffffff
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
je 0x4293de
mov edx, dword [ebp - 0x14]
mov eax, dword [edx*4 + 0x49b800]
mov ecx, dword [ebp - 0x20]
add eax, dword [ebp - 0x18]
mov esi, dword [ebp - 0x34]
mov edx, dword [ebp + 8]
shl edi, 4
add edi, 0x4bbf90
push edi
add ecx, 0x41
push ecx
push eax
push 8
push 0
mov ecx, esi
call fcn.00420ee0
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0x48], esi
mov eax, dword [ebp + 8]
add eax, 0xf6c4
xor edi, edi
cmp byte [eax], 0
je 0x4293fd
inc edi
add eax, 0xbc
cmp edi, 0x190
jl 0x4293e8
jmp 0x42945e
lea esi, [eax + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [eax], 1
call fcn.0044e3a0
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov dword [eax + 0xa0], ecx
mov dword [eax + 0x9c], ecx
mov dword [eax + 4], ecx
cmp edi, 0xffffffff
je 0x42945e
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax*4 + 0x49b800]
shl ebx, 4
add ebx, 0x4bbf90
push ebx
add edx, 0x41
push edx
mov edx, dword [ebp - 0x18]
lea eax, [ecx + edx + 0xc]
mov edx, dword [ebp + 8]
push eax
push 8
push 0
mov ecx, edi
call fcn.00420ee0
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0x4c], edi
cmp dword [ebp - 0x3c], 0
jle 0x4294e2
mov edi, dword [ebp + 8]
add edi, 0xf6c4
xor ebx, ebx
cmp byte [edi], 0
je 0x429489
inc ebx
add edi, 0xbc
cmp ebx, 0x190
jl 0x429473
jmp 0x4294e2
lea esi, [edi + 0xa4]
mov byte [edi], 1
call fcn.0044e3a0
xor eax, eax
mov dword [edi + 0xa0], eax
mov dword [edi + 0x9c], eax
mov dword [edi + 4], eax
cmp ebx, 0xffffffff
je 0x4294e2
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x20]
shl eax, 4
add eax, 0x4bbf90
push eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax*4 + 0x49b808]
add ecx, dword [ebp - 0x18]
add edx, 0x41
push edx
mov edx, dword [ebp + 8]
push ecx
push 8
push 0
mov ecx, ebx
call fcn.00420ee0
mov edx, dword [ebp - 0x1c]
mov dword [edx + 0x50], ebx
mov edi, dword [ebp + 8]
add edi, 0xf6c4
xor ebx, ebx
lea ecx, [ecx]
cmp byte [edi], 0
je 0x429506
inc ebx
add edi, 0xbc
cmp ebx, 0x190
jl 0x4294f0
jmp 0x429563
lea esi, [edi + 0xa4]
mov byte [edi], 1
call fcn.0044e3a0
xor eax, eax
mov dword [edi + 0xa0], eax
mov dword [edi + 0x9c], eax
mov dword [edi + 4], eax
cmp ebx, 0xffffffff
je 0x429563
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx*4 + 0x49b808]
shl eax, 4
add eax, 0x4bbf90
push eax
mov eax, dword [ebp - 0x20]
add eax, 0x41
push eax
mov eax, dword [ebp - 0x18]
lea ecx, [edx + eax + 0xc]
mov edx, dword [ebp + 8]
push ecx
push 8
push 0
mov ecx, ebx
call fcn.00420ee0
mov edx, dword [ebp - 0x1c]
mov dword [edx + 0x54], ebx
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x5d68c]
mov dword [ebp - 0x3c], eax
cmp eax, 0xa
ja 0x4295f2
mov edi, dword [ebp + 8]
add edi, 0xf6c4
xor ebx, ebx
cmp byte [edi], 0
je 0x429599
inc ebx
add edi, 0xbc
cmp ebx, 0x190
jl 0x429583
jmp 0x4295f2
lea esi, [edi + 0xa4]
mov byte [edi], 1
call fcn.0044e3a0
xor eax, eax
mov dword [edi + 0xa0], eax
mov dword [edi + 0x9c], eax
mov dword [edi + 4], eax
cmp ebx, 0xffffffff
je 0x4295f2
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x20]
shl eax, 4
add eax, 0x4bc230
push eax
mov eax, dword [edx*4 + 0x49b810]
add eax, dword [ebp - 0x18]
mov edx, dword [ebp + 8]
add ecx, 0xc
push ecx
push eax
push 8
push 0
mov ecx, ebx
call fcn.00420ee0
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0x70], ebx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp + 8]
cmp dword [eax + 0xa4190], edx
jne 0x42967f
mov edi, eax
add edi, 0xf6c4
xor ebx, ebx
mov edi, edi
cmp byte [edi], 0
je 0x429626
inc ebx
add edi, 0xbc
cmp ebx, 0x190
jl 0x429610
jmp 0x42967f
lea esi, [edi + 0xa4]
mov byte [edi], 1
call fcn.0044e3a0
xor eax, eax
mov dword [edi + 0xa0], eax
mov dword [edi + 0x9c], eax
mov dword [edi + 4], eax
cmp ebx, 0xffffffff
je 0x42967f
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
mov ecx, eax
mov eax, dword [eax*4 + 0x49b818]
add eax, dword [ebp - 0x18]
shl ecx, 4
add ecx, 0x4bc130
push ecx
add edx, 9
push edx
mov edx, dword [ebp + 8]
push eax
push 8
push 0
mov ecx, ebx
call fcn.00420ee0
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0x78], ebx
cmp byte [0x4cded8], 0
mov edi, dword [ebp - 0x30]
jne 0x429694
cmp byte [edi + 0x4cdee4], 0
je 0x4296c4
cmp edi, 9
ja 0x4296c4
mov esi, dword [ebp + 8]
lea edx, [edi + 0xd]
push edx
lea eax, [esi + 0xb0ec]
call fcn.004075a0
mov edx, edi
imul edx, edx, 0x84
add edx, 0x4c4a60
lea ecx, [esi + 0xb0ec]
call fcn.004072d0
inc edi
mov dword [ebp - 0x30], edi
cmp edi, 0xa
jl 0x428936
call dword [0x48939c]
mov esi, dword [ebp + 8]
mov ecx, eax
sub ecx, dword [esi + 0xa4194]
mov eax, 0x10624dd3
mul ecx
mov ecx, edx
shr ecx, 6
add ecx, dword [esi + 0xa4188]
jns 0x4296f8
xor ecx, ecx
mov eax, 0x91a2b3c5
imul ecx
add edx, ecx
sar edx, 0xb
mov esi, edx
shr esi, 0x1f
add esi, edx
mov edx, esi
imul edx, edx, 0xfffff1f0
mov dword [0x4ce414], ecx
add ecx, edx
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, eax
shl edx, 4
sub edx, eax
add edx, edx
add edx, edx
sub ecx, edx
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x2c], ecx
cmp esi, 0x63
jle 0x42975c
mov edi, 0x3b
mov esi, 0x63
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x2c], edi
mov eax, 0x66666667
imul esi
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
lea eax, [edi + edi*4]
add eax, eax
sub esi, eax
mov dword [ebp - 0x30], esi
test edi, edi
je 0x4297ed
mov ebx, dword [ebp + 8]
add ebx, 0xf6c4
xor eax, eax
cmp byte [ebx], 0
je 0x42979b
inc eax
add ebx, 0xbc
cmp eax, 0x190
jl 0x429786
jmp 0x4297ed
lea esi, [ebx + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [ebx], 1
call fcn.0044e3a0
xor eax, eax
cmp dword [ebp - 0x38], 0xffffffff
mov dword [ebx + 0xa0], eax
mov dword [ebx + 0x9c], eax
mov dword [ebx + 4], eax
je 0x4297ed
mov esi, dword [ebp - 0x38]
mov edx, dword [ebp + 8]
shl edi, 4
add edi, 0x4bbef0
push edi
push 0x22d
push 0x116
push 8
push eax
mov ecx, esi
call fcn.00420ee0
mov dword [0x4ce3fc], esi
mov edi, dword [ebp + 8]
add edi, 0xf6c4
xor ebx, ebx
cmp byte [edi], 0
je 0x42980e
inc ebx
add edi, 0xbc
cmp ebx, 0x190
jl 0x4297f8
jmp 0x42985c
lea esi, [edi + 0xa4]
mov byte [edi], 1
call fcn.0044e3a0
xor eax, eax
mov dword [edi + 0xa0], eax
mov dword [edi + 0x9c], eax
mov dword [edi + 4], eax
cmp ebx, 0xffffffff
je 0x42985c
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp + 8]
shl eax, 4
add eax, 0x4bbef0
push eax
push 0x22d
push 0x12a
push 8
push 0
mov ecx, ebx
call fcn.00420ee0
mov dword [0x4ce400], ebx
mov ecx, dword [ebp - 0x34]
mov ebx, dword [ebp + 8]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
lea edx, [edi + edi*4]
add edx, edx
mov eax, ecx
sub eax, edx
mov dword [ebp - 0x30], eax
add ebx, 0xf6c4
xor eax, eax
cmp byte [ebx], 0
je 0x42989c
inc eax
add ebx, 0xbc
cmp eax, 0x190
jl 0x429887
jmp 0x4298ee
lea esi, [ebx + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [ebx], 1
call fcn.0044e3a0
xor eax, eax
cmp dword [ebp - 0x38], 0xffffffff
mov dword [ebx + 0xa0], eax
mov dword [ebx + 0x9c], eax
mov dword [ebx + 4], eax
je 0x4298ee
mov esi, dword [ebp - 0x38]
mov edx, dword [ebp + 8]
shl edi, 4
add edi, 0x4bbef0
push edi
push 0x22d
push 0x16e
push 8
push eax
mov ecx, esi
call fcn.00420ee0
mov dword [0x4ce404], esi
mov edi, dword [ebp + 8]
add edi, 0xf6c4
xor ebx, ebx
lea esp, [esp]
cmp byte [edi], 0
je 0x429916
inc ebx
add edi, 0xbc
cmp ebx, 0x190
jl 0x429900
jmp 0x429964
lea esi, [edi + 0xa4]
mov byte [edi], 1
call fcn.0044e3a0
xor eax, eax
mov dword [edi + 0xa0], eax
mov dword [edi + 0x9c], eax
mov dword [edi + 4], eax
cmp ebx, 0xffffffff
je 0x429964
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp + 8]
shl eax, 4
add eax, 0x4bbef0
push eax
push 0x22d
push 0x182
push 8
push 0
mov ecx, ebx
call fcn.00420ee0
mov dword [0x4ce408], ebx
mov ecx, dword [ebp - 0x2c]
mov ebx, dword [ebp + 8]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
lea eax, [edi + edi*4]
lea edx, [eax + eax]
mov eax, ecx
sub eax, edx
mov dword [ebp - 0x30], eax
add ebx, 0xf6c4
xor eax, eax
cmp byte [ebx], 0
je 0x4299a5
inc eax
add ebx, 0xbc
cmp eax, 0x190
jl 0x429990
jmp 0x4299f7
lea esi, [ebx + 0xa4]
mov dword [ebp - 0x38], eax
mov byte [ebx], 1
call fcn.0044e3a0
xor eax, eax
cmp dword [ebp - 0x38], 0xffffffff
mov dword [ebx + 0xa0], eax
mov dword [ebx + 0x9c], eax
mov dword [ebx + 4], eax
je 0x4299f7
mov esi, dword [ebp - 0x38]
mov edx, dword [ebp + 8]
shl edi, 4
add edi, 0x4bbef0
push edi
push 0x22d
push 0x1ad
push 8
push eax
mov ecx, esi
call fcn.00420ee0
mov dword [0x4ce40c], esi
mov edi, dword [ebp + 8]
add edi, 0xf6c4
xor ebx, ebx
cmp byte [edi], 0
je 0x429a61
inc ebx
add edi, 0xbc
cmp ebx, 0x190
jl 0x429a02
mov esi, dword [ebp + 8]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x2c]
mov dword [0x4ce418], eax
mov dword [0x4ce41c], ecx
mov dword [0x4ce420], edx
mov al, byte [esi + 0xa427c]
test al, al
jne 0x429a33
mov byte [esi + 0xa42bd], al
mov dword [esi + 0x357f4], 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 4
lea esi, [edi + 0xa4]
mov byte [edi], 1
call fcn.0044e3a0
xor ecx, ecx
mov dword [edi + 0xa0], ecx
mov dword [edi + 0x9c], ecx
mov dword [edi + 4], ecx
cmp ebx, 0xffffffff
je 0x429a16
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp + 8]
shl eax, 4
add eax, 0x4bbef0
push eax
push 0x22d
push 0x1c1
push 8
push ecx
mov ecx, ebx
mov edx, esi
call fcn.00420ee0
mov dword [0x4ce410], ebx
jmp 0x429a19
mov esi, ebx
call fcn.00403a30
mov esi, dword [ebx + 0xad84]
mov edi, dword [0x4cdedc]
mov dword [ebp - 0x28], eax
mov eax, dword [ebx + 0xad80]
mov ecx, eax
xor ecx, esi
mov edx, ecx
and edx, eax
test edx, 0x40000
je 0x429af3
lea eax, [edi - 1]
test eax, eax
jns 0x429aed
mov eax, 9
add eax, 2
mov dword [ebp - 0x28], eax
test edx, 0x80000
je 0x429b0b
lea eax, [edi + 1]
cmp eax, 9
jle 0x429b05
xor eax, eax
add eax, 2
mov dword [ebp - 0x28], eax
and ecx, esi
test cl, 2
jne 0x429b1a
test edx, 0x2000
je 0x429b21
mov dword [ebp - 0x28], 1
test edx, 0x100000
je 0x429b30
mov dword [ebp - 0x28], 0xc
mov esi, dword [0x489370]
test edx, 0x10000
je 0x429ba4
mov edi, dword [0x4ce428]
dec edi
jns 0x429b4c
mov edi, 9
mov eax, edi
shl eax, 4
mov ecx, dword [eax + 0x4bc590]
mov eax, dword [eax + 0x4bc594]
push eax
push ecx
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x4c]
push ecx
lea ecx, [ebx + 0x2f4]
mov dword [ebp - 0x40], eax
call fcn.00443ea0
mov edx, dword [eax]
mov dword [ebp - 0x44], edx
mov eax, dword [eax + 4]
mov edx, dword [ebx + 0x21c]
mov edx, dword [edx + 0x60]
lea ecx, [ebx + 0x21c]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x44]
push eax
call edx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
push eax
push ecx
call esi
mov dword [0x4ce428], edi
mov eax, dword [ebx + 0xad80]
mov edx, dword [ebx + 0xad84]
xor edx, eax
and edx, eax
test edx, 0x20000
je 0x429c22
mov edi, dword [0x4ce428]
inc edi
cmp edi, 9
jle 0x429bca
xor edi, edi
mov eax, edi
shl eax, 4
mov ecx, dword [eax + 0x4bc590]
mov eax, dword [eax + 0x4bc594]
push eax
mov dword [ebp - 0x40], eax
push ecx
lea eax, [ebp - 0x54]
mov dword [ebp - 0x44], ecx
push eax
lea ecx, [ebx + 0x2f4]
call fcn.00443ea0
mov ecx, dword [eax]
mov dword [ebp - 0x44], ecx
mov edx, dword [eax + 4]
mov eax, dword [ebx + 0x21c]
mov eax, dword [eax + 0x60]
lea ecx, [ebx + 0x21c]
mov dword [ebp - 0x40], edx
lea edx, [ebp - 0x44]
push edx
call eax
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
push ecx
push edx
call esi
mov dword [0x4ce428], edi
mov eax, dword [ebx + 0xad80]
mov ecx, dword [ebx + 0xad84]
xor ecx, eax
and ecx, eax
jns 0x429c51
push 0x13
mov eax, ebx
call fcn.004192a0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [ebp - 0x28]
dec eax
cmp eax, 0x16
ja case.default.0x429c65
movzx edx, byte [eax + 0x42a4ec]
jmp dword [edx*4 + 0x42a4d8]
mov ecx, dword [0x4ba078]
test ecx, ecx
js 0x429c7d
mov edi, ebx
call fcn.0042f510
mov dword [ebx + 0x357f4], 0x384
jmp case.default.0x429c65
cmp byte [0x4cded9], 0
jne case.default.0x429c65
mov ecx, dword [0x4ba074]
test ecx, ecx
js 0x429caa
mov edi, ebx
call fcn.0042f510
cmp byte [0x4cded8], 0
sete al
mov byte [0x4cded8], al
lea esp, [esp]
mov cl, byte [ebx + 0xa427c]
test cl, cl
jne 0x429cc0
lea esi, [ebx + 0xb0ec]
push esi
call fcn.00406f70
movzx eax, byte [0x4cded8]
mov edx, dword [0x4cdedc]
push edx
push eax
mov eax, ebx
call fcn.00405bb0
mov ecx, dword [0x4ce424]
mov edx, dword [ecx*4 + 0x4bb5c4]
imul edx, edx, 0x84
lea edx, [edx + 0x4c4f04]
mov ecx, esi
call fcn.004072d0
mov dword [ebx + 0x357f4], 0xc8
jmp case.default.0x429c65
mov ecx, dword [0x4ba074]
test ecx, ecx
js 0x429d2c
mov edi, ebx
call fcn.0042f510
mov eax, dword [ebp - 0x28]
add eax, 0xfffffffe
cmp dword [0x4cdedc], eax
je case.default.0x429c65
mov dword [0x4cdedc], eax
mov dl, byte [ebx + 0xa427c]
test dl, dl
jne 0x429d43
lea esi, [ebx + 0xb0ec]
push esi
call fcn.00406f70
mov eax, dword [0x4cdedc]
movzx ecx, byte [0x4cded8]
push eax
push ecx
mov eax, ebx
call fcn.00405bb0
mov edx, dword [0x4ce424]
mov edx, dword [edx*4 + 0x4bb5c4]
jmp 0x429cf9
mov ecx, dword [0x4ba074]
test ecx, ecx
js 0x429d91
mov edi, ebx
call fcn.0042f510
mov edi, dword [ebp - 0x28]
add edi, 0xfffffff3
cmp byte [0x4cded8], 0
je 0x429dc8
cmp byte [edi + 0x4cdee4], 0
mov esi, ebx
je 0x429daf
push 4
jmp 0x429db1
push 2
call fcn.00427f90
mov dword [0x4cdee0], edi
mov dword [ebx + 0x357f4], 0x12c
jmp case.default.0x429c65
cmp byte [edi + 0x4cdee4], 0
je case.default.0x429c65
push 3
mov esi, ebx
mov dword [0x4cdee0], edi
call fcn.00427f90
mov dword [ebx + 0x357f4], 0x190
jmp case.default.0x429c65
mov eax, dword [0x4ce424]
mov ecx, dword [eax*4 + 0x4bc860]
push ecx
mov ecx, dword [eax*4 + 0x4bb5c4]
mov edx, ebx
call fcn.0042f810
call dword [0x48939c]
mov edx, eax
sub edx, dword [ebx + 0xa4194]
mov eax, 0x10624dd3
mul edx
mov ecx, edx
shr ecx, 6
add ecx, dword [ebx + 0xa4188]
jns 0x429e2b
xor ecx, ecx
cmp dword [0x4ce414], ecx
je 0x42a4c2
mov eax, 0x91a2b3c5
imul ecx
add edx, ecx
sar edx, 0xb
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, esi
imul eax, eax, 0xfffff1f0
mov dword [0x4ce414], ecx
add ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov edi, edx
shr edi, 0x1f
add edi, edx
mov edx, edi
shl edx, 4
sub edx, edi
add edx, edx
add edx, edx
sub ecx, edx
mov dword [ebp - 0x2c], ecx
cmp esi, 0x63
jle 0x429e8f
mov edi, 0x3b
mov esi, 0x63
mov dword [ebp - 0x2c], edi
cmp esi, dword [0x4ce418]
je 0x429f49
mov eax, 0x66666667
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
add ecx, ecx
mov edx, esi
sub edx, ecx
mov ecx, dword [0x4ce3fc]
cmp ecx, 0xffffffff
je 0x429f05
imul ecx, ecx, 0xbc
lea ecx, [ecx + ebx + 0xf6c4]
test ecx, ecx
je 0x429f05
shl eax, 4
add eax, 0x4bbef0
mov dword [ebp + 8], eax
mov eax, dword [eax]
mov dword [ecx + 0x7c], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
mov dword [ecx + 0x80], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov dword [ecx + 0x84], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc]
mov dword [ecx + 0x88], eax
mov eax, dword [0x4ce400]
cmp eax, 0xffffffff
je 0x429f49
imul eax, eax, 0xbc
lea eax, [eax + ebx + 0xf6c4]
test eax, eax
je 0x429f49
shl edx, 4
add edx, 0x4bbef0
mov ecx, dword [edx]
mov dword [eax + 0x7c], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 0x80], ecx
mov ecx, dword [edx + 8]
mov dword [eax + 0x84], ecx
mov edx, dword [edx + 0xc]
mov dword [eax + 0x88], edx
cmp edi, dword [0x4ce41c]
je 0x42a003
mov eax, 0x66666667
imul edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
add ecx, ecx
mov edx, edi
sub edx, ecx
mov ecx, dword [0x4ce404]
cmp ecx, 0xffffffff
je 0x429fbf
imul ecx, ecx, 0xbc
lea ecx, [ecx + ebx + 0xf6c4]
test ecx, ecx
je 0x429fbf
shl eax, 4
add eax, 0x4bbef0
mov dword [ebp + 8], eax
mov eax, dword [eax]
mov dword [ecx + 0x7c], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
mov dword [ecx + 0x80], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov dword [ecx + 0x84], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc]
mov dword [ecx + 0x88], eax
mov eax, dword [0x4ce408]
cmp eax, 0xffffffff
je 0x42a003
imul eax, eax, 0xbc
lea eax, [eax + ebx + 0xf6c4]
test eax, eax
je 0x42a003
shl edx, 4
add edx, 0x4bbef0
mov ecx, dword [edx]
mov dword [eax + 0x7c], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 0x80], ecx
mov ecx, dword [edx + 8]
mov dword [eax + 0x84], ecx
mov edx, dword [edx + 0xc]
mov dword [eax + 0x88], edx
mov ecx, dword [ebp - 0x2c]
cmp ecx, dword [0x4ce420]
je 0x42a0c4
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*4]
add edx, edx
mov dword [ebp + 8], edx
mov edx, ecx
mov ecx, dword [0x4ce40c]
sub edx, dword [ebp + 8]
cmp ecx, 0xffffffff
je 0x42a080
imul ecx, ecx, 0xbc
lea ecx, [ecx + ebx + 0xf6c4]
test ecx, ecx
je 0x42a080
shl eax, 4
add eax, 0x4bbef0
mov dword [ebp + 8], eax
mov eax, dword [eax]
mov dword [ecx + 0x7c], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
mov dword [ecx + 0x80], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov dword [ecx + 0x84], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc]
mov dword [ecx + 0x88], eax
mov eax, dword [0x4ce410]
cmp eax, 0xffffffff
je 0x42a0c4
imul eax, eax, 0xbc
lea ebx, [eax + ebx + 0xf6c4]
test ebx, ebx
je 0x42a0c4
shl edx, 4
add edx, 0x4bbef0
mov ecx, dword [edx]
mov dword [ebx + 0x7c], ecx
mov ecx, dword [edx + 4]
mov dword [ebx + 0x80], ecx
mov ecx, dword [edx + 8]
mov dword [ebx + 0x84], ecx
mov edx, dword [edx + 0xc]
mov dword [ebx + 0x88], edx
mov eax, dword [ebp - 0x2c]
mov dword [0x4ce418], esi
mov dword [0x4ce41c], edi
mov dword [0x4ce420], 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 4
mov cl, byte [ebx + 0xa427c]
test cl, cl
jne 0x42a0f0
push ebx
call fcn.0043a8d0
mov eax, 0x4cdef8
or edi, 0xffffffff
mov dword [eax - 8], edi
mov dword [eax - 4], edi
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 8], edi
mov dword [eax + 0xc], edi
mov dword [eax + 0x10], edi
mov dword [eax + 0x14], edi
mov dword [eax + 0x18], edi
mov dword [eax + 0x1c], edi
mov dword [eax + 0x20], edi
mov dword [eax + 0x24], edi
mov dword [eax + 0x28], edi
mov dword [eax + 0x2c], edi
mov dword [eax + 0x30], edi
mov dword [eax + 0x34], edi
mov dword [eax + 0x38], edi
mov dword [eax + 0x3c], edi
mov dword [eax + 0x40], edi
mov dword [eax + 0x44], edi
mov dword [eax + 0x48], edi
mov dword [eax + 0x4c], edi
mov dword [eax + 0x50], edi
mov dword [eax + 0x54], edi
mov dword [eax + 0x58], edi
mov dword [eax + 0x5c], edi
mov dword [eax + 0x60], edi
mov dword [eax + 0x64], edi
mov dword [eax + 0x68], edi
mov dword [eax + 0x6c], edi
add eax, 0x7c
cmp eax, 0x4ce3d0
jl 0x42a108
xor esi, esi
mov dword [0x4ce3f0], edi
mov dword [0x4ce3f4], edi
mov dword [0x4ce3fc], edi
mov dword [0x4ce400], edi
mov dword [0x4ce404], edi
mov dword [0x4ce408], edi
mov dword [0x4ce40c], edi
mov dword [0x4ce410], edi
mov dword [0x4ce3f8], edi
mov dword [0x4ce418], esi
mov dword [0x4ce41c], esi
mov dword [0x4ce420], esi
mov dword [0x4ce42c], edi
mov byte [0x4ce430], 0
mov edx, dword [ebx + 0xa4184]
push str.slbase.bmp
push ebx
mov dword [0x4cdedc], edx
call fcn.004174c0
push esi
push 8
push str.slchip.kg
push ebx
call fcn.00417210
mov ecx, ebx
call fcn.00419b50
lea ecx, [ebp - 0x6c]
mov word [ebx + 0xa42a5], si
mov byte [ebx + 0xa42a7], 0
call fcn.0044e1d0
lea ecx, [ebp - 0x6c]
mov dword [ebx + 0x358f8], esi
mov dword [ebp - 4], edi
call fcn.0044e300
cmp byte [ebx + 0xa419a], 0
jne 0x42a225
mov esi, ebx
call fcn.00431370
mov dword [0x4ce428], edi
mov esi, dword [ebx + 0xa4194]
mov edi, dword [ebx + 0xa4188]
call dword [0x48939c]
mov ecx, eax
sub ecx, esi
mov eax, 0x10624dd3
mul ecx
shr edx, 6
add edx, edi
mov eax, 0x7482296b
imul edx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0xf
jl 0x42a268
mov eax, 0xe
mov edx, dword [0x4cdedc]
mov dword [0x4ce424], eax
movzx eax, byte [0x4cded8]
push edx
push eax
mov eax, ebx
call fcn.00405bb0
mov ecx, dword [0x4ce424]
mov edx, dword [ecx*4 + 0x4bb5c4]
imul edx, edx, 0x84
lea edx, [edx + 0x4c4f04]
lea ecx, [ebx + 0xb0ec]
call fcn.004072d0
mov byte [ebx + 0xb120], 1
mov byte [ebx + 0xa42bd], 1
mov dword [ebx + 0x357f4], 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 4
cmp dword [0x4cdeb8], 1
jne 0x42a2f4
mov eax, dword [0x4cdedc]
lea edx, [eax + eax*4]
mov eax, dword [0x4cdee0]
push 0
lea ecx, [eax + edx*2]
push ebx
call fcn.00414f00
mov dword [ebx + 0x357f4], 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 4
cmp eax, 0x190
je 0x42a3c9
cmp eax, 0x384
jne 0x42a4c2
jmp 0x42a330
mov cl, byte [ebx + 0xa427c]
test cl, cl
jne 0x42a330
mov edx, ebx
call fcn.00428170
mov eax, dword [ebx + 0x3582c]
mov edx, dword [0x4cdedc]
mov dword [ebx + 0xa4184], edx
cmp eax, 0xffffffff
je 0x42a361
push 0
push eax
push ebx
call fcn.004168a0
lea eax, [ebx + 0x2834]
push eax
call fcn.0043e6b0
mov ecx, ebx
call fcn.00419bf0
mov ecx, ebx
call fcn.00419350
mov dword [ebx + 0x357ac], eax
mov eax, dword [ebx + 0x357a0]
cmp dword [ebx + 0x3579c], eax
je 0x42a398
add eax, 0xfffffffc
mov dword [ebx + 0x357a0], eax
lea ecx, [ebx + 0xb0ec]
push ecx
call fcn.00406f70
mov dword [ebx + 0x357f4], 0
mov byte [ebx + 0xa42bd], 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 4
cmp dword [0x4cdeb8], 1
jne 0x42a406
mov eax, dword [0x4cdedc]
lea edx, [eax + eax*4]
mov eax, dword [0x4cdee0]
mov esi, ebx
lea edi, [eax + edx*2]
call fcn.00419400
push ebx
call fcn.004195c0
push edi
push ebx
call fcn.004155d0
test al, al
mov eax, ebx
jne 0x42a424
mov edi, 0x49d1b0
call fcn.004388d0
mov dword [ebx + 0x357f4], 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 4
call fcn.00419a80
lea esp, [esp]
mov cl, byte [ebx + 0xa427c]
test cl, cl
jne 0x42a430
mov edx, ebx
call fcn.00428170
mov eax, dword [ebx + 0x3582c]
mov edx, dword [0x4cdedc]
mov dword [ebx + 0xa4184], edx
cmp eax, 0xffffffff
je 0x42a461
push 0
push eax
push ebx
call fcn.004168a0
lea eax, [ebx + 0x2834]
push eax
call fcn.0043e6b0
lea edi, [ebx + 0xb0ec]
push edi
call fcn.00406f70
mov edx, edi
mov esi, str.Message
call fcn.004039f0
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x42a4a5
test cl, cl
je 0x42a4a1
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x42a4a5
add eax, 2
add esi, 2
test cl, cl
jne 0x42a485
xor eax, eax
jmp 0x42a4aa
sbb eax, eax
sbb eax, 0xffffffff
xor esi, esi
cmp eax, esi
jne 0x42a4b6
push edi
call fcn.00406f70
mov dword [ebx + 0x357f4], esi
mov dword [ebx + 0x357c0], 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 4