Function at 0x426e40
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49670b
mov eax, dword fs:[0]
push eax
sub esp, 0x14c
mov eax, dword [0x4c5008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0xe0], ebx
xor esi, esi
lea ecx, [ebp - 0x118]
mov dword [ebp - 0xd0], esi
call fcn.00459660
mov dword [ebp - 4], esi
mov eax, dword [ebx + 0xeea0]
mov edx, dword [ebx + 0xeea4]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebx + 0x3ce28]
mov dword [ebp - 0xbc], edx
cmp eax, 0x64
jg 0x428750
je 0x428259
cmp eax, 0x57
ja case.0x426ec9.1
movzx eax, byte [eax + 0x4290a4]
jmp dword [eax*4 + 0x429084]
push 0
push 0x12
push str.cgbase.kg
mov ecx, ebx
call fcn.0041a4a0
push 0
push 8
push str.cgchip.kg
mov ecx, ebx
call fcn.0041a4a0
mov ecx, ebx
call fcn.004432c0
push 7
mov ecx, ebx
call fcn.00436020
mov esi, 0x4f2058
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045ac80
lea ecx, [esi - 0x258]
call fcn.0045aca0
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045ac80
mov ecx, esi
call fcn.0045aca0
sub esp, 0xc
mov ecx, esp
push 1
call fcn.0045ac80
lea ecx, [esi + 0x258]
call fcn.0045aca0
add esi, 0xc
cmp esi, 0x4f22b0
jl 0x426f05
sub esp, 0xc
mov dword [0x4f1dc8], 0
mov ecx, esp
mov dword [0x4f1dd0], 0
push 0
call fcn.0045ac80
mov ecx, 0x4f2508
call fcn.0045aca0
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045ac80
mov ecx, 0x4f2514
call fcn.0045aca0
or eax, 0xffffffff
mov byte [0x4f1de8], 1
mov dword [0x4f2520], 0
mov ecx, 0x178
mov edi, 0x4f252c
rep stosd dword es:[edi], eax
or eax, eax
mov ecx, 0x178
mov edi, 0x4f2b0c
rep stosd dword es:[edi], eax
mov eax, dword [0x4f252c]
cmp eax, 0xffffffff
je 0x426ff1
cmp eax, 0x18f
ja 0x426fe7
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [0x4f252c], 0xffffffff
mov esi, 0x507288
xor edi, edi
cmp byte [esi], 0
je 0x427011
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x426ff8
or edi, 0xffffffff
jmp 0x42703a
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.00459860
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [0x4f252c], edi
cmp edi, 0xffffffff
je 0x427061
push 0
push 0
push 0
push 0x12
push edi
push 0
mov ecx, ebx
mov dword [0x4f2b0c], 0
call fcn.00425bb0
mov ecx, dword [0x4f1dcc]
xor esi, esi
xor edi, edi
mov dword [0x4f1dc0], 1
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xdc], esi
mov dword [ebp - 0xd4], esi
lea eax, [ecx + 2]
mov dword [0x4f1dc4], eax
test ecx, ecx
jle 0x42717a
mov ecx, 0x5a2bc4
mov dword [ebp - 0xb4], ecx
mov edx, 0x32
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0xc0], edx
mov eax, dword [ecx - 4]
mov edi, dword [ecx]
cmp eax, 0xffffffff
je 0x42712b
test edi, edi
jle 0x42712b
add dword [ebp - 0xd8], edi
test edi, edi
jle 0x42712b
lea esi, [eax*2 + 0xf79f]
add esi, eax
lea esi, [ebx + esi*4]
mov ebx, dword [ebp - 0xdc]
nop dword [eax]
push 1
lea ecx, [ebp - 0x124]
call fcn.0045ac80
mov ecx, eax
call fcn.0045ac50
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045ac80
mov ecx, esi
call fcn.0045acd0
test al, al
je 0x42710b
inc ebx
add esi, 0xc
sub edi, 1
jne 0x4270e0
mov ecx, dword [ebp - 0xec]
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0xdc], ebx
mov ebx, dword [ebp - 0xe0]
add ecx, 8
sub edx, 1
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0xc0], edx
jne 0x4270b3
mov eax, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xb4]
inc eax
add ecx, 0x190
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xb4], ecx
cmp eax, dword [0x4f1dcc]
jl 0x4270a2
mov esi, dword [ebp - 0xdc]
mov edi, dword [ebp - 0xd8]
sub esp, 0xc
mov ecx, esp
push edi
call fcn.0045ac80
mov ecx, 0x4f2514
call fcn.0045aca0
sub esp, 0xc
mov ecx, esp
push esi
call fcn.0045ac80
mov ecx, 0x4f2508
call fcn.0045aca0
imul eax, esi, 0x64
cdq
idiv edi
mov ecx, eax
cmp ecx, 0x64
jle 0x4271b8
mov ecx, 0x64
jmp 0x4271bf
xor eax, eax
test ecx, ecx
cmovs ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 2
mov esi, edx
shr esi, 0x1f
add esi, edx
lea eax, [esi + esi*4]
add eax, eax
sub ecx, eax
mov eax, 0x66666667
imul esi
mov eax, 0x66666667
mov dword [ebp - 0x14], ecx
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
imul edi
lea ecx, [edi + edi*4]
sar edx, 2
add ecx, ecx
mov eax, edx
sub esi, ecx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x18], esi
lea eax, [eax + eax*4]
add eax, eax
sub edi, eax
xor eax, eax
mov dword [ebp - 0x1c], edi
cmp dword [ebp + eax*4 - 0x1c], 0
jne 0x427227
mov dword [ebp + eax*4 - 0x1c], 0xa
inc eax
cmp eax, 2
jl 0x427212
mov ecx, 0x1c3
xor esi, esi
mov dword [ebp - 0xe0], ecx
mov dword [ebp - 0xec], esi
nop word [eax + eax]
mov eax, dword [esi + 0x4f2538]
cmp eax, 0xffffffff
je 0x427273
cmp eax, 0x18f
ja 0x427269
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [esi + 0x4f2538], 0xffffffff
mov esi, 0x507288
xor edi, edi
nop word [eax + eax]
cmp byte [esi], 0
je 0x427299
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x427280
or edi, 0xffffffff
jmp 0x4272c8
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.00459860
mov ecx, dword [ebp - 0xe0]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov esi, dword [ebp - 0xec]
mov dword [esi + 0x4f2538], edi
cmp edi, 0xffffffff
je 0x42730c
mov edx, edi
mov dword [esi + 0x4f2b18], 0
cmp edx, 0xffffffff
je 0x42730c
mov eax, dword [ebp + esi - 0x1c]
shl eax, 4
add eax, 0x4d3d70
push eax
push 8
push ecx
push 8
push edx
push 0
mov ecx, ebx
call fcn.00425bb0
mov ecx, dword [ebp - 0xe0]
add ecx, 0x13
add esi, 4
mov dword [ebp - 0xec], esi
mov dword [ebp - 0xe0], ecx
cmp ecx, 0x1fc
jl 0x427240
mov ecx, dword [0x4f1dcc]
xor edi, edi
test ecx, ecx
jle 0x4273a4
mov eax, dword [ebp - 0xd0]
cmp dword [edi*4 + 0x4a08b0], 0xffffffff
je 0x427384
or eax, 1
lea ecx, [ebp - 0x130]
push 1
mov dword [ebp - 0xd0], eax
call fcn.0045ac80
mov ecx, eax
call fcn.0045ac50
push dword [edi*4 + 0x4a08b0]
mov ecx, ebx
mov esi, eax
call fcn.004220b0
mov ecx, dword [0x4f1dcc]
cmp eax, esi
sete al
jmp 0x427386
mov al, 1
mov byte [edi + 0x5a2b48], al
mov eax, dword [ebp - 0xd0]
test al, 1
je 0x42739f
and eax, 0xfffffffe
mov dword [ebp - 0xd0], eax
inc edi
cmp edi, ecx
jl 0x427340
push str.CGMode
lea ecx, [ebx + 0xf2fc]
call fcn.00405d70
push 0xb
mov ecx, ebx
mov byte [ebx + 0xae089], 1
call fcn.00436c60
mov dword [ebx + 0x3ce28], 0x32
jmp case.0x426ec9.1
mov edi, dword [0x4f1dc8]
mov esi, dword [0x4f1dd0]
mov dword [ebp - 0xec], edi
mov dword [ebp - 0xc8], esi
mov eax, dword [edi*4 + 0x5a2b60]
mov dword [0x4f1dd4], eax
lea eax, [ebx + 0xf2fc]
mov ecx, eax
mov dword [0x4f2524], 0
mov dword [0x4f2528], 0x3e8
mov dword [ebp - 0xbc], eax
call fcn.00406220
push edi
mov ecx, ebx
call fcn.00405600
mov ecx, dword [0x4f1dcc]
test ecx, ecx
jle 0x42746f
mov ebx, dword [ebp - 0xbc]
mov esi, 1
mov edi, 0x5a2b48
cmp byte [edi + esi - 1], 0
jne 0x427455
push esi
mov ecx, ebx
call fcn.00406530
mov ecx, dword [0x4f1dcc]
inc esi
lea eax, [esi - 1]
cmp eax, ecx
jl 0x427440
mov ebx, dword [ebp - 0xe0]
mov esi, dword [ebp - 0xc8]
mov edi, dword [ebp - 0xec]
mov eax, dword [0x4f2548]
cmp eax, 0xffffffff
je 0x427494
push dword [0x4f2b28]
mov ecx, 0x4f3820
push eax
call fcn.00425b50
mov dword [0x4f2548], 0xffffffff
mov eax, dword [0x4f2af8]
cmp eax, 0xffffffff
je 0x4274b9
push dword [0x4f30d8]
mov ecx, 0x4f3820
push eax
call fcn.00425b50
mov dword [0x4f2af8], 0xffffffff
mov eax, dword [0x4f2af4]
cmp eax, 0xffffffff
je 0x4274de
push dword [0x4f30d4]
mov ecx, 0x4f3820
push eax
call fcn.00425b50
mov dword [0x4f2af4], 0xffffffff
mov eax, dword [0x4f2af0]
cmp eax, 0xffffffff
je 0x427503
push dword [0x4f30d0]
mov ecx, 0x4f3820
push eax
call fcn.00425b50
mov dword [0x4f2af0], 0xffffffff
mov eax, dword [0x4f2ae4]
cmp eax, 0xffffffff
je 0x427528
push dword [0x4f30c4]
mov ecx, 0x4f3820
push eax
call fcn.00425b50
mov dword [0x4f2ae4], 0xffffffff
mov eax, dword [0x4f2ae8]
cmp eax, 0xffffffff
je 0x42754d
push dword [0x4f30c8]
mov ecx, 0x4f3820
push eax
call fcn.00425b50
mov dword [0x4f2ae8], 0xffffffff
push 0
mov edx, 0x4f2b28
mov ecx, 0x4f2548
call fcn.00402b20
add esp, 4
cmp eax, 0xffffffff
je 0x427591
mov ecx, edi
shl ecx, 4
add ecx, 0x4d3aa8
push ecx
push dword [edi*8 + 0x4d3c7c]
mov ecx, ebx
push dword [edi*8 + 0x4d3c78]
push dword [edi*4 + str._b_b_b_b_b_b]
push eax
push 0
call fcn.00425bb0
xor cl, cl
call fcn.00426840
mov eax, dword [ebp - 0xec]
xor edi, edi
add eax, esi
mov dword [ebp - 0xdc], 0
imul eax, eax, 0x32
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xb0], eax
nop dword [eax + eax]
mov eax, 0xaaaaaaab
mov ecx, edi
mul edi
shr edx, 1
lea eax, [edx + edx*2]
sub ecx, eax
imul eax, ecx, 0x133
add eax, 0x167
mov dword [ebp - 0xe4], eax
imul eax, edx, 0xc7
add eax, 0x30
mov dword [ebp - 0xe8], eax
mov eax, dword [edi*4 + 0x4f254c]
cmp eax, 0xffffffff
je 0x427655
mov ecx, dword [edi*4 + 0x4f2b2c]
sub ecx, 0
je 0x42762c
sub ecx, 1
jne 0x42764a
cmp eax, 0x18f
ja 0x42764a
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], cl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x42764a
cmp eax, 0x18f
ja 0x42764a
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi*4 + 0x4f254c], 0xffffffff
mov eax, dword [edi*4 + 0x4f2618]
cmp eax, 0xffffffff
je 0x4276ba
mov ecx, dword [edi*4 + 0x4f2bf8]
sub ecx, 0
je 0x427691
sub ecx, 1
jne 0x4276af
cmp eax, 0x18f
ja 0x4276af
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], cl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x4276af
cmp eax, 0x18f
ja 0x4276af
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi*4 + 0x4f2618], 0xffffffff
mov eax, dword [edi*4 + 0x4f26e8]
cmp eax, 0xffffffff
je 0x42771f
mov ecx, dword [edi*4 + 0x4f2cc8]
sub ecx, 0
je 0x4276f6
sub ecx, 1
jne 0x427714
cmp eax, 0x18f
ja 0x427714
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], cl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x427714
cmp eax, 0x18f
ja 0x427714
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi*4 + 0x4f26e8], 0xffffffff
mov eax, dword [edi*4 + 0x4f27b4]
lea ecx, [edi*4 + 0x4f27b4]
mov dword [ebp - 0xb4], ecx
cmp eax, 0xffffffff
je 0x42778c
mov edx, dword [edi*4 + 0x4f2d94]
sub edx, 0
je 0x427768
sub edx, 1
jne 0x427786
cmp eax, 0x18f
ja 0x427786
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], dl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x427786
cmp eax, 0x18f
ja 0x427786
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [ecx], 0xffffffff
mov eax, dword [edi*4 + 0x4f2880]
cmp eax, 0xffffffff
je 0x4277f1
mov ecx, dword [edi*4 + 0x4f2e60]
sub ecx, 0
je 0x4277c8
sub ecx, 1
jne 0x4277e6
cmp eax, 0x18f
ja 0x4277e6
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], cl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x4277e6
cmp eax, 0x18f
ja 0x4277e6
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi*4 + 0x4f2880], 0xffffffff
mov eax, dword [edi*4 + 0x4f294c]
lea esi, [edi*4 + 0x4f294c]
mov dword [ebp - 0xd4], esi
cmp eax, 0xffffffff
je 0x42785e
mov ecx, dword [edi*4 + 0x4f2f2c]
sub ecx, 0
je 0x42783a
sub ecx, 1
jne 0x427858
cmp eax, 0x18f
ja 0x427858
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], cl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x427858
cmp eax, 0x18f
ja 0x427858
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [esi], 0xffffffff
mov eax, dword [edi*4 + 0x4f2a18]
cmp eax, 0xffffffff
je 0x4278c3
mov ecx, dword [edi*4 + 0x4f2ff8]
sub ecx, 0
je 0x42789a
sub ecx, 1
jne 0x4278b8
cmp eax, 0x18f
ja 0x4278b8
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], cl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x4278b8
cmp eax, 0x18f
ja 0x4278b8
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi*4 + 0x4f2a18], 0xffffffff
mov eax, dword [ebp - 0xb0]
add eax, edi
mov esi, dword [eax*8 + 0x5a2bc0]
mov eax, dword [eax*8 + 0x5a2bc4]
mov dword [ebp - 0xbc], eax
test esi, esi
js 0x4280e4
test eax, eax
jle 0x4280e4
inc dword [ebp - 0xdc]
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045ac80
lea eax, [edi + edi*2]
shl eax, 2
mov dword [ebp - 0xc8], eax
lea ecx, [eax + 0x4f22b0]
call fcn.0045aca0
mov ecx, dword [ebp - 0xbc]
xor eax, eax
mov dword [ebp - 0xac], eax
test ecx, ecx
jle 0x4279aa
mov edx, dword [ebp - 0xd0]
lea esi, [esi + esi*2]
lea esi, [esi + 0xf79f]
mov edi, eax
lea esi, [ebx + esi*4]
mov ebx, ecx
or edx, 2
lea ecx, [ebp - 0x13c]
push 1
mov dword [ebp - 0xd0], edx
call fcn.0045ac80
mov ecx, eax
call fcn.0045ac50
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045ac80
mov ecx, esi
call fcn.0045acd0
mov edx, dword [ebp - 0xd0]
test al, al
lea eax, [edi + 1]
setne cl
and edx, 0xfffffffd
add esi, 0xc
mov dword [ebp - 0xd0], edx
test cl, cl
cmove eax, edi
mov edi, eax
sub ebx, 1
jne 0x427943
mov ebx, dword [ebp - 0xe0]
mov dword [ebp - 0xac], edi
mov edi, dword [ebp - 0xd8]
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045ac80
mov esi, dword [ebp - 0xc8]
lea ecx, [esi + 0x4f2058]
call fcn.0045aca0
cmp dword [ebp - 0xac], 0
jle 0x427cc0
sub esp, 0xc
mov ecx, esp
push 1
call fcn.0045ac80
lea ecx, [esi + 0x4f1e00]
call fcn.0045aca0
cmp dword [edi*4 + 0x4f254c], 0xffffffff
je 0x427a29
mov eax, dword [edi*4 + 0x4f254c]
cmp eax, 0xffffffff
je 0x427a1e
cmp eax, 0x18f
ja 0x427a1e
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi*4 + 0x4f254c], 0xffffffff
xor eax, eax
mov esi, 0x507288
mov dword [ebp - 0xc0], eax
cmp byte [esi], 0
je 0x427a54
inc eax
add esi, 0xcc
mov dword [ebp - 0xc0], eax
cmp eax, 0x190
jl 0x427a36
or eax, 0xffffffff
jmp 0x427a83
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.00459860
mov eax, dword [ebp - 0xc0]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [edi*4 + 0x4f254c], eax
cmp eax, 0xffffffff
je 0x427aec
mov esi, eax
mov dword [edi*4 + 0x4f2b2c], 0
cmp esi, 0xffffffff
je 0x427aec
push 0x4d3f30
push dword [ebp - 0xe8]
mov ecx, ebx
push dword [ebp - 0xe4]
push 8
push esi
push 0
call fcn.00425bb0
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x427aec
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d3a50]
movups xmmword [eax + ebx + 0x13b04], xmm0
cmp dword [edi*4 + 0x4f2618], 0xffffffff
je 0x427b2b
mov eax, dword [edi*4 + 0x4f2618]
cmp eax, 0xffffffff
je 0x427b20
cmp eax, 0x18f
ja 0x427b20
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi*4 + 0x4f2618], 0xffffffff
xor eax, eax
mov esi, 0x507288
mov dword [ebp - 0xc0], eax
cmp byte [esi], 0
je 0x427b56
inc eax
add esi, 0xcc
mov dword [ebp - 0xc0], eax
cmp eax, 0x190
jl 0x427b38
or eax, 0xffffffff
jmp 0x427b85
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.00459860
mov eax, dword [ebp - 0xc0]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [edi*4 + 0x4f2618], eax
cmp eax, 0xffffffff
je 0x427c48
mov dword [ebp - 0xc8], eax
mov eax, 0x38e38e39
mul edi
mov eax, edi
mov dword [edi*4 + 0x4f2bf8], 0
mov esi, edx
shr esi, 1
lea ecx, [esi + esi*8]
sub eax, ecx
mov ecx, 3
cdq
idiv ecx
imul eax, eax, 0x9f
imul ecx, edx, 0x11d
mov dword [ebp - 0xfc], eax
add eax, 0x9f
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0x100]
push eax
mov eax, dword [ebp - 0xe8]
add eax, 3
mov dword [ebp - 0x100], ecx
push eax
mov eax, dword [ebp - 0xe4]
add ecx, 0x11d
add eax, 3
mov dword [ebp - 0xf8], ecx
push eax
lea eax, [esi + 0x1f]
mov ecx, ebx
mov esi, dword [ebp - 0xc8]
push eax
push esi
push 0
call fcn.00425bb0
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x427c48
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d3a50]
movups xmmword [eax + ebx + 0x13b04], xmm0
push dword [ebp - 0xe8]
mov edx, dword [ebp - 0xe4]
lea edi, [ebp - 0xa8]
mov ecx, 0x21
mov esi, 0x4d10f8
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0xd8]
lea ecx, [ebp - 0xa8]
add esi, 0x17
mov dword [ebp - 0xa8], esi
call fcn.00403180
add esp, 4
mov eax, ecx
lea ecx, [ebx + 0xf2fc]
push eax
call fcn.00406290
push esi
lea ecx, [ebx + 0xf2fc]
call fcn.004065d0
cmp dword [eax], 0xffffffff
je 0x427de3
mov byte [eax + 0x84], 1
movups xmm0, xmmword [0x4d3a50]
movups xmmword [eax + 0x88], xmm0
jmp 0x427de3
cmp dword [edi*4 + 0x4f254c], 0xffffffff
je 0x427cff
mov eax, dword [edi*4 + 0x4f254c]
cmp eax, 0xffffffff
je 0x427cf4
cmp eax, 0x18f
ja 0x427cf4
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi*4 + 0x4f254c], 0xffffffff
xor eax, eax
mov esi, 0x507288
mov dword [ebp - 0xc0], eax
nop dword [eax]
cmp byte [esi], 0
je 0x427d2e
inc eax
add esi, 0xcc
mov dword [ebp - 0xc0], eax
cmp eax, 0x190
jl 0x427d10
or eax, 0xffffffff
jmp 0x427d5d
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.00459860
mov eax, dword [ebp - 0xc0]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [edi*4 + 0x4f254c], eax
cmp eax, 0xffffffff
je 0x427dc6
mov esi, eax
mov dword [edi*4 + 0x4f2b2c], 0
cmp esi, 0xffffffff
je 0x427dc6
push 0x4d3f20
push dword [ebp - 0xe8]
mov ecx, ebx
push dword [ebp - 0xe4]
push 8
push esi
push 0
call fcn.00425bb0
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x427dc6
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d3a50]
movups xmmword [eax + ebx + 0x13b04], xmm0
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045ac80
mov eax, dword [ebp - 0xc8]
lea ecx, [eax + 0x4f1e00]
call fcn.0045aca0
mov esi, dword [ebp - 0xac]
mov eax, 0x66666667
imul esi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea eax, [ecx + ecx*4]
add eax, eax
sub esi, eax
test ecx, ecx
mov eax, 0xa
mov dword [ebp - 0x18], esi
cmove ecx, eax
mov eax, dword [ebp - 0xe4]
xor edx, edx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0xb4]
add eax, 0xc9
mov dword [ebp - 0xac], edx
mov dword [ebp - 0xc0], eax
mov eax, dword [ecx]
cmp eax, 0xffffffff
je 0x427e5b
cmp eax, 0x18f
ja 0x427e55
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [ecx], 0xffffffff
mov esi, 0x507288
xor edi, edi
cmp byte [esi], 0
je 0x427e7b
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x427e62
or edi, 0xffffffff
jmp 0x427eb0
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.00459860
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xac]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [ecx], edi
cmp edi, 0xffffffff
je 0x427f31
mov esi, edi
mov dword [ecx + 0x5e0], 0
cmp esi, 0xffffffff
je 0x427f31
mov eax, dword [ebp + edx*4 - 0x1c]
mov ecx, ebx
shl eax, 4
add eax, 0x4d3758
push eax
mov eax, dword [ebp - 0xe8]
add eax, 0xab
push eax
push dword [ebp - 0xc0]
push 8
push esi
push 0
call fcn.00425bb0
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xac]
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x427f31
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d3a50]
movups xmmword [eax + ebx + 0x13b04], xmm0
add dword [ebp - 0xc0], 0x16
inc edx
add ecx, 0xcc
mov dword [ebp - 0xac], edx
mov dword [ebp - 0xb4], ecx
cmp edx, 2
jl 0x427e30
mov ecx, dword [ebp - 0xbc]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, 0xa
jl 0x427f7f
mov dword [ebp - 0x1c], eax
lea eax, [eax + eax*4]
add eax, eax
sub ecx, eax
mov dword [ebp - 0x18], ecx
jmp 0x427f90
lea eax, [eax + eax*4]
mov dword [ebp - 0x18], 0xa
add eax, eax
sub ecx, eax
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0xe4]
xor ecx, ecx
mov edi, dword [ebp - 0xd4]
add edx, 0x106
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xac], edx
mov eax, dword [edi]
cmp eax, 0xffffffff
je 0x427fdb
cmp eax, 0x18f
ja 0x427fd5
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [edi], 0xffffffff
mov esi, 0x507288
xor edi, edi
cmp byte [esi], 0
je 0x427ffb
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x427fe2
or edi, 0xffffffff
jmp 0x428030
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.00459860
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xac]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov esi, dword [ebp - 0xd4]
cmp edi, 0xffffffff
mov dword [esi], edi
mov edi, esi
je 0x4280b4
mov dword [edi + 0x5e0], 0
mov esi, dword [edi]
cmp esi, 0xffffffff
je 0x4280b4
mov eax, dword [ebp + ecx*4 - 0x1c]
mov ecx, ebx
shl eax, 4
add eax, 0x4d3758
push eax
mov eax, dword [ebp - 0xe8]
add eax, 0xab
push eax
push edx
push 8
push esi
push 0
call fcn.00425bb0
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xac]
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x4280b4
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d3a50]
movups xmmword [eax + ebx + 0x13b04], xmm0
inc ecx
add edi, 0xcc
add edx, 0x16
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xd4], edi
mov dword [ebp - 0xac], edx
cmp ecx, 2
jl 0x427fb0
mov edi, dword [ebp - 0xd8]
jmp 0x42812f
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045ac80
lea esi, [edi + edi*2]
lea ecx, [esi*4 + 0x4f1e00]
call fcn.0045aca0
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045ac80
lea ecx, [esi*4 + 0x4f2058]
call fcn.0045aca0
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045ac80
lea ecx, [esi*4 + 0x4f22b0]
call fcn.0045aca0
inc edi
mov dword [ebp - 0xd8], edi
cmp edi, 0x32
jl 0x4275c0
mov ecx, dword [ebp - 0xdc]
mov eax, 0x38e38e39
add ecx, 8
xor esi, esi
imul ecx
sar edx, 1
mov edi, edx
shr edi, 0x1f
add edi, edx
test edi, edi
jle 0x4281b4
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xb0], eax
nop
push esi
push eax
sub esp, 0x18
mov ecx, esp
push str.CGTM_02d_02d.KG
call fcn.004596e0
lea eax, [ebp - 0x118]
push eax
call fcn.0045a7a0
add esp, 0x24
lea eax, [esi + 0x1f]
lea ecx, [ebp - 0x118]
push 0
push eax
call fcn.00459c80
push eax
mov ecx, ebx
call fcn.0041a4a0
mov eax, dword [ebp - 0xb0]
inc esi
cmp esi, edi
jl 0x428170
mov ecx, dword [ebp - 0xdc]
mov eax, 0x55555556
push 0xffffffffffffffff
lea ecx, [ecx + 2]
imul ecx
xor ecx, ecx
mov eax, edx
add edx, 0xfffffffd
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xc7
test eax, eax
cmovs eax, ecx
mov dword [0x4f2528], eax
mov byte [ebx + 0xae089], cl
lea ecx, [ebx + 0xeea8]
call fcn.0044c890
cmp byte [0x4f1de8], 0
mov eax, 0x64
mov ecx, 0x3c
mov dword [0x4f2520], 0
cmovne eax, ecx
mov dword [ebx + 0x3ce28], eax
jmp case.0x426ec9.1
mov dword [ebx + 0x3ce28], 0x41
jmp case.0x426ec9.1
cmp byte [0x4f1de8], 0
mov eax, 0x55
mov ecx, 0x32
cmove eax, ecx
mov dword [ebx + 0x3ce28], eax
jmp case.0x426ec9.1
mov dword [ebx + 0x3ce28], 0x57
jmp case.0x426ec9.1
mov eax, dword [ebx + 0xee04]
lea ecx, [ebx + 0xf2fc]
and eax, 0x1004001
neg eax
sbb eax, eax
neg eax
push eax
push dword [ebx + 0xeea4]
push dword [ebx + 0xeea0]
push dword [ebx + 0xf2dc]
call fcn.004066a0
mov ecx, dword [ebx + 0xf310]
mov edi, dword [ebx + 0xf314]
sub ecx, 0x16
lea eax, [ecx - 1]
cmp eax, 0x31
ja 0x4282aa
imul eax, dword [0x4f1dd0], 0x32
add ecx, eax
jmp 0x4282ac
xor ecx, ecx
mov eax, dword [0x4f2520]
cmp ecx, eax
cmovne eax, ecx
mov dword [0x4f2520], eax
mov edx, dword [ebx + 0xee08]
mov ecx, edx
mov esi, dword [ebx + 0xee04]
mov eax, esi
shr ecx, 1
shr eax, 1
xor al, cl
and al, cl
test al, 1
jne 0x4282e9
mov ecx, esi
mov eax, edx
shr ecx, 0xd
shr eax, 0xd
xor al, cl
and al, cl
test al, 1
je 0x4282ee
mov edi, 0x10
mov eax, edx
mov ecx, esi
shr eax, 0x14
shr ecx, 0x14
xor al, cl
and al, cl
test al, 1
mov eax, 0xd
cmovne edi, eax
mov eax, dword [ebx + 0xee04]
shr eax, 5
shr edx, 5
xor dl, al
and dl, al
test dl, 1
jne 0x428339
lea esi, [ebx + 0xeea8]
mov eax, dword [esi + 0x7c]
lea ecx, [esi + 0x7c]
mov eax, dword [eax + 8]
call eax
test al, al
je 0x428370
cmp dword [esi + 0xa0], 1
jne 0x428370
lea esi, [ebx + 0xeea8]
push 3
mov ecx, esi
call fcn.0044c890
mov ecx, dword [0x4f2524]
add ecx, 0x31
cmp ecx, dword [0x4f2528]
cmovg ecx, dword [0x4f2528]
mov dword [0x4f2524], ecx
xor cl, cl
call fcn.00426840
call fcn.00426990
mov ecx, dword [ebx + 0xee04]
mov eax, dword [ebx + 0xee08]
shr ecx, 4
shr eax, 4
xor al, cl
and al, cl
test al, 1
jne 0x4283a2
mov eax, dword [esi + 0x7c]
lea ecx, [esi + 0x7c]
mov eax, dword [eax + 8]
call eax
test al, al
je 0x4283cc
cmp dword [esi + 0xa0], 2
jne 0x4283cc
push 3
mov ecx, esi
call fcn.0044c890
mov eax, dword [0x4f2524]
mov ecx, 0
sub eax, 0x31
cmovs eax, ecx
xor cl, cl
mov dword [0x4f2524], eax
call fcn.00426840
call fcn.00426990
movzx eax, word [ebx + 0xee06]
mov cl, byte [ebx + 0xee0a]
mov edx, dword [0x4f1dc0]
xor cl, al
mov esi, dword [0x4f1dc4]
and cl, al
test cl, 1
je 0x428473
test edx, edx
jle 0x4283f9
dec edx
jmp 0x4283fc
lea edx, [esi - 1]
mov dword [0x4f1dc0], edx
test edx, edx
js 0x428473
cmp edx, esi
jge 0x428473
push dword [edx*8 + 0x4a09ec]
lea eax, [ebp - 0xf0]
push dword [edx*8 + 0x4a09e8]
lea ecx, [ebx + 0x2f0]
push eax
call fcn.00450840
lea edx, [ebp - 0xcc]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0xcc], ecx
lea ecx, [ebx + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0xc8], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0xc8]
push dword [ebp - 0xcc]
call dword [0x499310]
mov esi, dword [0x4f1dc4]
mov edx, dword [0x4f1dc0]
mov ecx, dword [ebx + 0xee04]
mov eax, dword [ebx + 0xee08]
shr ecx, 0x11
shr eax, 0x11
xor al, cl
and al, cl
test al, 1
je 0x42850e
lea eax, [esi - 1]
cmp edx, eax
jge 0x4284a9
add edx, 1
mov dword [0x4f1dc0], edx
js 0x42850e
jmp 0x4284b1
xor edx, edx
mov dword [0x4f1dc0], edx
cmp edx, esi
jge 0x42850e
push dword [edx*8 + 0x4a09ec]
lea eax, [ebp - 0xc4]
push dword [edx*8 + 0x4a09e8]
lea ecx, [ebx + 0x2f0]
push eax
call fcn.00450840
lea edx, [ebp - 0xcc]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0xcc], ecx
lea ecx, [ebx + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0xc8], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0xc8]
push dword [ebp - 0xcc]
call dword [0x499310]
mov esi, dword [ebp - 0xe0]
mov ebx, dword [ebx + 0xee08]
mov eax, ebx
shr eax, 0x12
mov edx, dword [esi + 0xee04]
mov ecx, edx
shr ecx, 0x12
xor al, cl
and al, cl
test al, 1
mov eax, 0x13
cmovne edi, eax
shr ebx, 0x13
shr edx, 0x13
mov eax, 0x14
xor bl, dl
and bl, dl
test bl, 1
cmovne edi, eax
lea ebx, [edi - 1]
cmp ebx, 0x11
ja case.default.0x428560
movzx eax, byte [ebx + 0x429114]
jmp dword [eax*4 + 0x4290fc]
push 2
mov ecx, esi
call fcn.00436790
mov dword [0x4f1dfc], 0
mov dword [esi + 0x3ce28], 0x384
jmp 0x4286e4
push 1
mov ecx, esi
call fcn.00436790
mov dword [0x4f1dfc], 0x15
mov dword [esi + 0x3ce28], 0x384
jmp 0x4286e4
push 1
mov ecx, esi
call fcn.00436790
mov dword [0x4f1dfc], 0x12
mov dword [esi + 0x3ce28], 0x384
jmp 0x4286e4
push 1
mov ecx, esi
call fcn.00436790
mov dword [0x4f1dfc], 0x17
mov dword [esi + 0x3ce28], 0x384
jmp 0x4286e4
push 1
mov ecx, esi
call fcn.00436790
push ecx
mov ecx, esi
call fcn.00416300
jmp 0x4286e4
cmp dword [0x4f1dc8], ebx
je 0x4286e4
push 1
mov ecx, esi
call fcn.00436790
mov dword [0x4f1dc8], ebx
mov dword [0x4f1dd0], 0
mov byte [0x4f1de8], 1
mov dword [esi + 0x3ce28], 0x50
jmp 0x4286e4
add edi, 0xffffffe9
cmp edi, 0x31
ja 0x4286e4
push 1
mov ecx, esi
call fcn.00436790
push 1
lea ecx, [ebp - 0x148]
call fcn.0045ac80
mov ecx, eax
call fcn.0045ac50
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045ac80
lea eax, [edi + edi*2]
lea ecx, [eax*4 + 0x4f1e00]
call fcn.0045ad50
test al, al
jne 0x4286e4
mov eax, dword [0x4f1dd0]
lea ecx, [esi + 0xf2fc]
add eax, dword [0x4f1dc8]
imul edx, eax, 0x32
push str.DUMMY
mov dword [0x4f1dd8], edi
mov dword [0x4f1ddc], 0
add edx, edi
mov eax, dword [edx*8 + 0x5a2bc0]
mov dword [0x4f1de0], eax
mov eax, dword [edx*8 + 0x5a2bc4]
mov dword [0x4f1de4], eax
call fcn.00405d70
mov byte [esi + 0xae089], 1
mov dword [esi + 0x3ce28], 0x190
test dword [esi + 0xee04], 0x4001
je case.0x426ec9.1
mov eax, dword [ebp - 0xb0]
add eax, 0xfffffb0a
cmp eax, 8
ja case.0x426ec9.1
mov eax, dword [ebp - 0xbc]
add eax, 0xffffffda
cmp eax, 0x233
ja case.0x426ec9.1
push dword [0x4f2b00]
mov ecx, 0x4f3820
push dword [0x4f30e0]
call fcn.00425d00
test eax, eax
je 0x428741
movups xmm0, xmmword [0x4d3a98]
movups xmmword [eax + 0x7c], xmm0
mov dword [esi + 0x3ce28], 0x96
jmp case.0x426ec9.1
cmp eax, 0x1c2
jg 0x428db0
je 0x428856
sub eax, 0x96
je 0x428c1d
sub eax, 0x96
je case.0x426ec9.65
sub eax, 0x64
jne case.0x426ec9.1
mov byte [ebx + 0xadf61], 1
cmp byte [ebx + 0xae040], 0
jne 0x428787
mov eax, dword [0x4f2b04]
cmp eax, 0xffffffff
je 0x4287b5
push dword [0x4f30e4]
mov ecx, 0x4f3820
push eax
call fcn.00425b50
mov dword [0x4f2b04], 0xffffffff
mov eax, dword [0x4f2b08]
cmp eax, 0xffffffff
je 0x4287da
push dword [0x4f30e8]
mov ecx, 0x4f3820
push eax
call fcn.00425b50
mov dword [0x4f2b08], 0xffffffff
mov eax, dword [0x4f1ddc]
cmp eax, dword [0x4f1de4]
jge 0x42884c
nop dword [eax + eax]
push 1
lea ecx, [ebp - 0x154]
or esi, 4
call fcn.0045ac80
mov ecx, eax
call fcn.0045ac50
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045ac80
mov eax, dword [0x4f1de0]
add eax, dword [0x4f1ddc]
lea ecx, [eax*2 + 0xf79f]
add ecx, eax
lea ecx, [ebx + ecx*4]
call fcn.0045ad50
test al, al
je 0x428930
mov eax, dword [0x4f1ddc]
and esi, 0xfffffffb
inc eax
mov dword [0x4f1ddc], eax
cmp eax, dword [0x4f1de4]
jl 0x4287f0
mov dword [ebx + 0x3ce28], 0x1ea
mov cl, byte [ebx + 0xee08]
mov al, byte [ebx + 0xee04]
xor al, cl
and al, cl
test al, 1
jne 0x428d94
mov edx, dword [ebx + 0xee08]
mov ecx, edx
mov esi, dword [ebx + 0xee04]
mov eax, esi
shr ecx, 0x18
shr eax, 0x18
xor al, cl
and al, cl
test al, 1
jne 0x428d94
mov ecx, edx
mov eax, esi
shr ecx, 0xe
shr eax, 0xe
xor al, cl
and al, cl
test al, 1
jne 0x428d94
mov ecx, edx
mov eax, esi
shr ecx, 1
shr eax, 1
xor al, cl
and al, cl
test al, 1
jne 0x428d85
mov eax, esi
shr edx, 0xd
shr eax, 0xd
xor dl, al
and dl, al
test dl, 1
jne 0x428d85
cmp byte [0x4f1de9], 0
je case.0x426ec9.1
mov edx, dword [ebx + 0xeea0]
mov esi, 1
mov edi, dword [ebx + 0xeea4]
mov dword [ebx + 0xd884], 2
lea eax, [esi + 3]
cmp edx, 0x64
jge 0x428c6f
cmp edx, 0x10
mov ecx, esi
cmovle ecx, eax
mov eax, dword [0x4f1df4]
neg ecx
lea edx, [eax + ecx*2]
mov dword [0x4f1df4], edx
test edx, edx
jns 0x428cb7
xor edx, edx
mov dword [0x4f1df4], edx
jmp 0x428cb7
mov ecx, dword [0x4f1ddc]
add ecx, dword [0x4f1de0]
mov eax, ecx
mov byte [ebp - 0xb5], 1
shl eax, 5
cmp dword [eax + ebx + 0x6b68c], 1
jne 0x428961
push 3
push ecx
mov ecx, ebx
call fcn.00419ac0
jmp 0x428a5a
push 0xe
push ecx
mov ecx, ebx
mov byte [ebp - 0xb5], 0
call fcn.0041a0a0
push 3
push 0x80000000
mov ecx, ebx
call fcn.00419ac0
mov eax, dword [0x4f2b08]
cmp eax, 0xffffffff
je 0x4289b2
cmp eax, 0x18f
ja 0x4289a8
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], 0
mov dword [eax + 0x51b218], 0xffffffff
mov dword [0x4f2b08], 0xffffffff
mov edi, 0x51b214
xor esi, esi
nop dword [eax]
cmp byte [edi], 0
je 0x4289d9
inc esi
add edi, 0xcc
cmp esi, 0x190
jl 0x4289c0
or esi, 0xffffffff
jmp 0x428a02
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.00459860
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 1
mov dword [0x4f2b08], esi
cmp esi, 0xffffffff
je 0x428a5a
push 0
push 0
push 0
push 3
push esi
push 1
mov ecx, ebx
mov dword [0x4f30e8], 1
call fcn.00425bb0
imul eax, esi, 0xcc
add eax, 0x279f4
add eax, ebx
je 0x428a5a
push 0x2d0
push 0x500
push 0
mov dword [eax + 0xac], 2
add eax, 0x7c
push 0
push eax
call dword [0x499304]
mov eax, dword [0x4f2b04]
cmp eax, 0xffffffff
je 0x428a8c
cmp eax, 0x18f
ja 0x428a82
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], 0
mov dword [eax + 0x51b218], 0xffffffff
mov dword [0x4f2b04], 0xffffffff
mov edi, 0x51b214
xor esi, esi
cmp byte [edi], 0
je 0x428aac
inc esi
add edi, 0xcc
cmp esi, 0x190
jl 0x428a93
or esi, 0xffffffff
jmp 0x428ad5
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.00459860
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 1
mov dword [0x4f2b04], esi
cmp esi, 0xffffffff
je 0x428c07
cmp byte [ebp - 0xb5], 0
mov dword [0x4f30e4], 1
je 0x428ba6
push 0
push 0
push 0
push 3
push esi
push 1
mov ecx, ebx
call fcn.00425bb0
mov eax, dword [ebx + 0xa90]
mov dword [0x4f1dec], eax
mov ecx, dword [ebx + 0xa94]
mov dword [0x4f1df0], ecx
cmp eax, dword [ebx + 0xadb84]
jg 0x428b47
cmp ecx, dword [ebx + 0xadb88]
jg 0x428b47
mov dword [ebx + 0xd884], 0
mov byte [0x4f1de9], 0
jmp 0x428b6c
mov dword [ebx + 0xd884], 2
mov byte [0x4f1de9], 1
mov dword [0x4f1df4], 0
mov dword [0x4f1df8], 0
imul eax, esi, 0xcc
add eax, 0x279f4
add eax, ebx
je 0x428c07
push 0x2d0
push 0x500
push 0
mov dword [eax + 0xac], 2
add eax, 0x7c
push 0
push eax
call dword [0x499304]
jmp 0x428c07
cmp byte [ebx + 0x38c8], 0
je 0x428bb7
mov ecx, dword [ebx + 0x38cc]
jmp 0x428bbd
mov ecx, dword [ebx + 0x3890]
mov eax, dword [ebx + 0xadb84]
sub eax, ecx
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
cmp byte [ebx + 0x38c8], 0
je 0x428bdd
mov edx, dword [ebx + 0x38d0]
jmp 0x428be3
mov edx, dword [ebx + 0x3894]
mov eax, dword [ebx + 0xadb88]
sub eax, edx
cdq
push 0
sub eax, edx
sar eax, 1
push eax
push ecx
push 0xe
push esi
push 1
mov ecx, ebx
call fcn.00425bb0
mov byte [0x4f1de9], 0
mov byte [ebx + 0xae089], 0
mov dword [ebx + 0x3ce28], 0x1c2
jmp 0x428856
test dword [ebx + 0xee04], 0x4001
jne 0x428c57
push dword [0x4f2b00]
mov ecx, 0x4f3820
push dword [0x4f30e0]
call fcn.00425d00
test eax, eax
je case.0x426ec9.65
movups xmm0, xmmword [0x4d3a88]
movups xmmword [eax + 0x7c], xmm0
jmp case.0x426ec9.65
mov ecx, edx
call fcn.00426950
mov cl, 1
call fcn.00426840
call fcn.00426990
jmp case.0x426ec9.1
mov ecx, dword [ebx + 0xadb84]
lea eax, [ecx - 0x64]
cmp edx, eax
jle 0x428cb1
lea eax, [ecx - 0x10]
mov ecx, esi
cmp edx, eax
mov eax, 4
cmovge ecx, eax
mov eax, dword [0x4f1df4]
lea edx, [eax + ecx*2]
mov eax, dword [0x4f1dec]
mov dword [0x4f1df4], edx
sub eax, dword [ebx + 0xadb84]
cmp edx, eax
cmovg edx, eax
mov dword [0x4f1df4], edx
jmp 0x428cb7
mov edx, dword [0x4f1df4]
cmp edi, 0x64
jge 0x428ce9
cmp edi, 0x10
mov eax, 4
cmovle esi, eax
mov eax, dword [0x4f1df8]
neg esi
lea ecx, [eax + esi*2]
mov dword [0x4f1df8], ecx
test ecx, ecx
jns 0x428d2f
xor ecx, ecx
mov dword [0x4f1df8], ecx
jmp 0x428d2f
mov ecx, dword [ebx + 0xadb88]
lea eax, [ecx - 0x64]
cmp edi, eax
jle 0x428d29
lea eax, [ecx - 0x10]
cmp edi, eax
mov eax, 4
cmovge esi, eax
mov eax, dword [0x4f1df8]
lea ecx, [eax + esi*2]
mov eax, dword [0x4f1df0]
mov dword [0x4f1df8], ecx
sub eax, dword [ebx + 0xadb88]
cmp ecx, eax
cmovg ecx, eax
mov dword [0x4f1df8], ecx
jmp 0x428d2f
mov ecx, dword [0x4f1df8]
mov esi, dword [0x4f2b04]
cmp esi, 0xffffffff
je case.0x426ec9.1
cmp dword [0x4f30e4], 0
mov eax, 0x279f4
mov edi, 0x13a68
cmove eax, edi
imul esi, esi, 0xcc
add esi, eax
add esi, ebx
je case.0x426ec9.1
mov eax, dword [ebx + 0xadb88]
add eax, ecx
push eax
mov eax, dword [ebx + 0xadb84]
add eax, edx
push eax
push ecx
push edx
lea eax, [esi + 0x7c]
push eax
call dword [0x499304]
jmp case.0x426ec9.1
mov dword [ebx + 0x3ce28], 0x1ea
jmp case.0x426ec9.1
inc dword [0x4f1ddc]
mov byte [ebx + 0xae089], 1
mov dword [ebx + 0x3ce28], 0x190
jmp case.0x426ec9.1
cmp eax, 0x1ea
je 0x428f50
cmp eax, 0x384
jne case.0x426ec9.1
cmp byte [ebx + 0xae040], 0
jne 0x428dc6
lea ecx, [ebx + 0xf2fc]
mov byte [ebx + 0xae089], 1
call fcn.00405f50
mov ecx, 0x4f252c
nop word [eax + eax]
mov eax, dword [ecx]
cmp eax, 0xffffffff
je 0x428e4e
mov edx, dword [ecx + 0x5e0]
sub edx, 0
je 0x428e2a
sub edx, 1
jne 0x428e48
cmp eax, 0x18f
ja 0x428e48
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], dl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x428e48
cmp eax, 0x18f
ja 0x428e48
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [ecx], 0xffffffff
add ecx, 4
cmp ecx, 0x4f2b0c
jl 0x428df0
lea ecx, [ebx + 0x28b4]
call fcn.004475e0
lea ecx, [ebx + 0x3334]
call fcn.004475e0
lea ecx, [ebx + 0xa64]
call fcn.0044d420
lea esi, [ebx + 0x6514]
mov edi, 3
mov ecx, esi
call fcn.004475e0
add esi, 0x2a0
sub edi, 1
jne 0x428e85
mov dword [ebx + 0x3ce28], edi
mov eax, dword [0x4f1dfc]
test eax, eax
jne 0x428f3f
mov eax, dword [ebx + 0x3cdcc]
sub eax, dword [ebx + 0x3cdc8]
test eax, 0xfffffffc
jg 0x428f24
mov eax, dword [ebx + 0x218]
lea ecx, [ebx + 0x218]
call dword [eax + 0x14]
push 0x10010
push 0x4b306c
push 0x4b1ba0
test eax, eax
jne 0x428efe
push eax
call dword [0x4992bc]
xor eax, eax
mov dword [ebx + 0x3cdd4], eax
add dword [ebx + 0x3cdcc], 0xfffffffc
jmp case.0x426ec9.1
mov eax, dword [ebx + 0x218]
lea ecx, [ebx + 0x218]
call dword [eax + 0xb8]
xor eax, eax
mov dword [ebx + 0x3cdd4], eax
add dword [ebx + 0x3cdcc], 0xfffffffc
jmp case.0x426ec9.1
mov eax, dword [ebx + 0x3cdcc]
mov eax, dword [eax - 4]
mov dword [ebx + 0x3cdd4], eax
add dword [ebx + 0x3cdcc], 0xfffffffc
jmp case.0x426ec9.1
mov dword [ebx + 0x3cdd4], eax
jmp case.0x426ec9.1
cmp byte [ebx + 0xae040], 0
jne 0x428f50
mov dword [ebx + 0xd884], 0
mov byte [ebx + 0xae089], 0
mov eax, dword [0x4f2b04]
cmp eax, 0xffffffff
je 0x428fcf
mov ecx, dword [0x4f30e4]
sub ecx, 0
je 0x428fa7
sub ecx, 1
jne 0x428fc5
cmp eax, 0x18f
ja 0x428fc5
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], cl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x428fc5
cmp eax, 0x18f
ja 0x428fc5
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [0x4f2b04], 0xffffffff
mov eax, dword [0x4f2b08]
cmp eax, 0xffffffff
je 0x429034
mov ecx, dword [0x4f30e8]
sub ecx, 0
je 0x42900c
sub ecx, 1
jne 0x42902a
cmp eax, 0x18f
ja 0x42902a
imul eax, eax, 0xcc
mov byte [eax + 0x51b214], cl
mov dword [eax + 0x51b218], 0xffffffff
jmp 0x42902a
cmp eax, 0x18f
ja 0x42902a
imul eax, eax, 0xcc
mov byte [eax + 0x507288], 0
mov dword [eax + 0x50728c], 0xffffffff
mov dword [0x4f2b08], 0xffffffff
lea ecx, [ebx + 0x3874]
call fcn.004475e0
lea ecx, [ebx + 0xf2fc]
call fcn.00405f50
mov byte [ebx + 0xadf61], 0
mov dword [ebx + 0x3ce28], 0x64
lea ecx, [ebp - 0x118]
call fcn.004597c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00461211
mov esp, ebp
pop ebp
ret