Function at 0x4273b0
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x496e3b
mov eax, dword fs:[0]
push eax
sub esp, 0x14c
mov eax, dword [0x4c6008]
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 - 0xd8], ebx
xor esi, esi
lea ecx, [ebp - 0x118]
mov dword [ebp - 0xd4], esi
call fcn.0045a000
mov dword [ebp - 4], esi
mov eax, dword [ebx + 0xeea0]
mov edx, dword [ebx + 0xeea4]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebx + 0x3ce28]
mov dword [ebp - 0xb0], edx
cmp eax, 0x64
jg 0x428c98
je 0x4287b9
cmp eax, 0x57
ja case.0x427439.1
movzx eax, byte [eax + 0x4295bc]
jmp dword [eax*4 + 0x42959c]
push 0
push 0x12
push str.cgbase.kg
mov ecx, ebx
call fcn.0041a590
push 0
push 8
push str.cgchip.kg
mov ecx, ebx
call fcn.0041a590
mov ecx, ebx
call fcn.00443dc0
push 7
mov ecx, ebx
call fcn.00436990
mov esi, 0x4f3998
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045b620
lea ecx, [esi - 0x258]
call fcn.0045b640
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045b620
mov ecx, esi
call fcn.0045b640
sub esp, 0xc
mov ecx, esp
push 1
call fcn.0045b620
lea ecx, [esi + 0x258]
call fcn.0045b640
add esi, 0xc
cmp esi, 0x4f3bf0
jl 0x427475
sub esp, 0xc
mov dword [0x4f3708], 0
mov ecx, esp
mov dword [0x4f3710], 0
push 0
call fcn.0045b620
mov ecx, 0x4f3e48
call fcn.0045b640
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045b620
mov ecx, 0x4f3e54
call fcn.0045b640
or eax, 0xffffffff
mov byte [0x4f3728], 1
mov dword [0x4f3e60], 0
mov ecx, 0x178
mov edi, 0x4f3e6c
rep stosd dword es:[edi], eax
or eax, eax
mov ecx, 0x178
mov edi, 0x4f444c
rep stosd dword es:[edi], eax
mov eax, dword [0x4f3e6c]
cmp eax, 0xffffffff
je 0x427561
cmp eax, 0x18f
ja 0x427557
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [0x4f3e6c], 0xffffffff
mov esi, 0x508bc8
xor edi, edi
cmp byte [esi], 0
je 0x427581
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x427568
or edi, 0xffffffff
jmp 0x4275aa
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045a200
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [0x4f3e6c], edi
cmp edi, 0xffffffff
je 0x4275d1
push 0
push 0
push 0
push 0x12
push edi
push 0
mov ecx, ebx
mov dword [0x4f444c], 0
call fcn.00426160
mov ecx, dword [0x4f370c]
xor ebx, ebx
xor esi, esi
mov dword [0x4f3700], 1
mov dword [ebp - 0xbc], ebx
lea eax, [ecx + 2]
mov dword [0x4f3704], eax
test ecx, ecx
jle 0x4276d8
mov ecx, 0x5a5184
mov dword [ebp - 0xdc], ecx
nop word [eax + eax]
mov edx, 0x32
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0xc4], edx
mov eax, dword [ecx - 4]
mov edi, dword [ecx]
cmp eax, 0xffffffff
je 0x427695
test edi, edi
jle 0x427695
add esi, edi
mov dword [ebp - 0xb0], esi
test edi, edi
jle 0x427695
mov ecx, dword [ebp - 0xd8]
lea esi, [eax*2 + 0xf79f]
add esi, eax
lea esi, [ecx + esi*4]
nop dword [eax]
push 1
lea ecx, [ebp - 0x124]
call fcn.0045b620
mov ecx, eax
call fcn.0045b5f0
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045b620
mov ecx, esi
call fcn.0045b670
test al, al
je 0x42767b
inc ebx
add esi, 0xc
sub edi, 1
jne 0x427650
mov ecx, dword [ebp - 0xec]
mov edx, dword [ebp - 0xc4]
mov esi, dword [ebp - 0xb0]
add ecx, 8
sub edx, 1
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0xc4], edx
jne 0x427621
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xdc]
inc eax
add ecx, 0x190
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xdc], ecx
cmp eax, dword [0x4f370c]
jl 0x427610
sub esp, 0xc
mov ecx, esp
push esi
call fcn.0045b620
mov ecx, 0x4f3e54
call fcn.0045b640
sub esp, 0xc
mov ecx, esp
push ebx
call fcn.0045b620
mov ecx, 0x4f3e48
call fcn.0045b640
imul eax, ebx, 0x64
cdq
idiv esi
mov ecx, eax
cmp ecx, 0x64
jle 0x427716
mov ecx, 0x64
jmp 0x42771d
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 0x427785
mov dword [ebp + eax*4 - 0x1c], 0xa
inc eax
cmp eax, 2
jl 0x427770
mov ecx, 0x1c3
xor esi, esi
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 0xec], esi
nop dword [eax + eax]
mov eax, dword [esi + 0x4f3e78]
cmp eax, 0xffffffff
je 0x4277d3
cmp eax, 0x18f
ja 0x4277c9
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [esi + 0x4f3e78], 0xffffffff
mov esi, 0x508bc8
xor edi, edi
nop word [eax + eax]
cmp byte [esi], 0
je 0x4277f9
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x4277e0
or edi, 0xffffffff
jmp 0x427828
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045a200
mov ecx, dword [ebp - 0xbc]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov esi, dword [ebp - 0xec]
mov ebx, dword [ebp - 0xd8]
mov dword [esi + 0x4f3e78], edi
cmp edi, 0xffffffff
je 0x427872
mov edx, edi
mov dword [esi + 0x4f4458], 0
cmp edx, 0xffffffff
je 0x427872
mov eax, dword [ebp + esi - 0x1c]
shl eax, 4
add eax, 0x4d52d0
push eax
push 8
push ecx
push 8
push edx
push 0
mov ecx, ebx
call fcn.00426160
mov ecx, dword [ebp - 0xbc]
add ecx, 0x13
add esi, 4
mov dword [ebp - 0xec], esi
mov dword [ebp - 0xbc], ecx
cmp ecx, 0x1fc
jl 0x4277a0
mov edx, dword [0x4f370c]
xor edi, edi
test edx, edx
jle 0x427923
mov ecx, dword [0x4f4d34]
test edi, edi
js 0x427903
mov eax, dword [0x4f4d38]
sub eax, ecx
sar eax, 2
cmp edi, eax
jae 0x427903
mov eax, dword [ecx + edi*4]
mov dword [ebp - 0xb0], eax
cmp eax, 0xffffffff
je 0x427903
or dword [ebp - 0xd4], 1
lea ecx, [ebp - 0x130]
push 1
call fcn.0045b620
mov ecx, eax
call fcn.0045b5f0
push dword [ebp - 0xb0]
mov ecx, ebx
mov esi, eax
call fcn.00422650
mov edx, dword [0x4f370c]
cmp eax, esi
mov ecx, dword [0x4f4d34]
sete al
jmp 0x427905
mov al, 1
mov byte [edi + 0x5a5108], al
mov eax, dword [ebp - 0xd4]
test al, 1
je 0x42791e
and eax, 0xfffffffe
mov dword [ebp - 0xd4], eax
inc edi
cmp edi, edx
jl 0x4278a6
push str.CGMode
lea ecx, [ebx + 0xf2fc]
call fcn.00405f90
push 0xb
mov ecx, ebx
mov byte [ebx + 0xaed0d], 1
call fcn.004376c0
mov dword [ebx + 0x3ce28], 0x32
jmp case.0x427439.1
mov edi, dword [0x4f3708]
mov esi, dword [0x4f3710]
mov dword [ebp - 0xec], edi
mov dword [ebp - 0xcc], esi
mov eax, dword [edi*4 + 0x5a5120]
mov dword [0x4f3714], eax
lea eax, [ebx + 0xf2fc]
mov ecx, eax
mov dword [0x4f3e64], 0
mov dword [0x4f3e68], 0x3e8
mov dword [ebp - 0xb0], eax
call fcn.00406440
push edi
mov ecx, ebx
call fcn.00405820
mov ecx, dword [0x4f370c]
test ecx, ecx
jle 0x4279ef
mov ebx, dword [ebp - 0xb0]
mov esi, 1
mov edi, 0x5a5108
nop
cmp byte [edi + esi - 1], 0
jne 0x4279d5
push esi
mov ecx, ebx
call fcn.00406750
mov ecx, dword [0x4f370c]
inc esi
lea eax, [esi - 1]
cmp eax, ecx
jl 0x4279c0
mov ebx, dword [ebp - 0xd8]
mov esi, dword [ebp - 0xcc]
mov edi, dword [ebp - 0xec]
mov eax, dword [0x4f3e88]
cmp eax, 0xffffffff
je 0x427a14
push dword [0x4f4468]
mov ecx, 0x4f5160
push eax
call fcn.00426100
mov dword [0x4f3e88], 0xffffffff
mov eax, dword [0x4f4438]
cmp eax, 0xffffffff
je 0x427a39
push dword [0x4f4a18]
mov ecx, 0x4f5160
push eax
call fcn.00426100
mov dword [0x4f4438], 0xffffffff
mov eax, dword [0x4f4434]
cmp eax, 0xffffffff
je 0x427a5e
push dword [0x4f4a14]
mov ecx, 0x4f5160
push eax
call fcn.00426100
mov dword [0x4f4434], 0xffffffff
mov eax, dword [0x4f4430]
cmp eax, 0xffffffff
je 0x427a83
push dword [0x4f4a10]
mov ecx, 0x4f5160
push eax
call fcn.00426100
mov dword [0x4f4430], 0xffffffff
mov eax, dword [0x4f4424]
cmp eax, 0xffffffff
je 0x427aa8
push dword [0x4f4a04]
mov ecx, 0x4f5160
push eax
call fcn.00426100
mov dword [0x4f4424], 0xffffffff
mov eax, dword [0x4f4428]
cmp eax, 0xffffffff
je 0x427acd
push dword [0x4f4a08]
mov ecx, 0x4f5160
push eax
call fcn.00426100
mov dword [0x4f4428], 0xffffffff
push 0
mov edx, 0x4f4468
mov ecx, 0x4f3e88
call fcn.00402af0
add esp, 4
cmp eax, 0xffffffff
je 0x427b11
mov ecx, edi
shl ecx, 4
add ecx, 0x4d4e88
push ecx
push dword [edi*8 + 0x4d505c]
mov ecx, ebx
push dword [edi*8 + 0x4d5058]
push dword [edi*4 + str._b_b_b_b_b_b]
push eax
push 0
call fcn.00426160
xor cl, cl
call fcn.00426db0
mov eax, dword [ebp - 0xec]
xor edi, edi
add eax, esi
mov dword [ebp - 0xbc], 0
imul eax, eax, 0x32
mov dword [ebp - 0xdc], edi
mov dword [ebp - 0xb4], 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 - 0xe0], eax
imul eax, edx, 0xc7
add eax, 0x30
mov dword [ebp - 0xe4], eax
mov eax, dword [edi*4 + 0x4f3e8c]
cmp eax, 0xffffffff
je 0x427bd5
mov ecx, dword [edi*4 + 0x4f446c]
sub ecx, 0
je 0x427bac
sub ecx, 1
jne 0x427bca
cmp eax, 0x18f
ja 0x427bca
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], cl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x427bca
cmp eax, 0x18f
ja 0x427bca
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi*4 + 0x4f3e8c], 0xffffffff
mov eax, dword [edi*4 + 0x4f3f58]
cmp eax, 0xffffffff
je 0x427c3a
mov ecx, dword [edi*4 + 0x4f4538]
sub ecx, 0
je 0x427c11
sub ecx, 1
jne 0x427c2f
cmp eax, 0x18f
ja 0x427c2f
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], cl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x427c2f
cmp eax, 0x18f
ja 0x427c2f
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi*4 + 0x4f3f58], 0xffffffff
mov eax, dword [edi*4 + 0x4f4028]
cmp eax, 0xffffffff
je 0x427c9f
mov ecx, dword [edi*4 + 0x4f4608]
sub ecx, 0
je 0x427c76
sub ecx, 1
jne 0x427c94
cmp eax, 0x18f
ja 0x427c94
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], cl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x427c94
cmp eax, 0x18f
ja 0x427c94
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi*4 + 0x4f4028], 0xffffffff
mov eax, dword [edi*4 + 0x4f40f4]
lea ecx, [edi*4 + 0x4f40f4]
mov dword [ebp - 0xc0], ecx
cmp eax, 0xffffffff
je 0x427d0c
mov edx, dword [edi*4 + 0x4f46d4]
sub edx, 0
je 0x427ce8
sub edx, 1
jne 0x427d06
cmp eax, 0x18f
ja 0x427d06
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], dl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x427d06
cmp eax, 0x18f
ja 0x427d06
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [ecx], 0xffffffff
mov eax, dword [edi*4 + 0x4f41c0]
cmp eax, 0xffffffff
je 0x427d71
mov ecx, dword [edi*4 + 0x4f47a0]
sub ecx, 0
je 0x427d48
sub ecx, 1
jne 0x427d66
cmp eax, 0x18f
ja 0x427d66
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], cl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x427d66
cmp eax, 0x18f
ja 0x427d66
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi*4 + 0x4f41c0], 0xffffffff
mov eax, dword [edi*4 + 0x4f428c]
lea esi, [edi*4 + 0x4f428c]
mov dword [ebp - 0xe8], esi
cmp eax, 0xffffffff
je 0x427dde
mov ecx, dword [edi*4 + 0x4f486c]
sub ecx, 0
je 0x427dba
sub ecx, 1
jne 0x427dd8
cmp eax, 0x18f
ja 0x427dd8
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], cl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x427dd8
cmp eax, 0x18f
ja 0x427dd8
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [esi], 0xffffffff
mov eax, dword [edi*4 + 0x4f4358]
cmp eax, 0xffffffff
je 0x427e43
mov ecx, dword [edi*4 + 0x4f4938]
sub ecx, 0
je 0x427e1a
sub ecx, 1
jne 0x427e38
cmp eax, 0x18f
ja 0x427e38
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], cl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x427e38
cmp eax, 0x18f
ja 0x427e38
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi*4 + 0x4f4358], 0xffffffff
mov eax, dword [ebp - 0xb4]
add eax, edi
mov esi, dword [eax*8 + 0x5a5180]
mov eax, dword [eax*8 + 0x5a5184]
mov dword [ebp - 0xb0], eax
test esi, esi
js 0x428649
test eax, eax
jle 0x428649
inc dword [ebp - 0xbc]
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045b620
lea eax, [edi + edi*2]
shl eax, 2
mov dword [ebp - 0xcc], eax
lea ecx, [eax + 0x4f3bf0]
call fcn.0045b640
mov ecx, dword [ebp - 0xb0]
xor eax, eax
mov dword [ebp - 0xac], eax
test ecx, ecx
jle 0x427f2a
mov edx, dword [ebp - 0xd4]
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 - 0xd4], edx
call fcn.0045b620
mov ecx, eax
call fcn.0045b5f0
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045b620
mov ecx, esi
call fcn.0045b670
mov edx, dword [ebp - 0xd4]
test al, al
lea eax, [edi + 1]
setne cl
and edx, 0xfffffffd
add esi, 0xc
mov dword [ebp - 0xd4], edx
test cl, cl
cmove eax, edi
mov edi, eax
sub ebx, 1
jne 0x427ec3
mov ebx, dword [ebp - 0xd8]
mov dword [ebp - 0xac], edi
mov edi, dword [ebp - 0xdc]
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045b620
mov esi, dword [ebp - 0xcc]
lea ecx, [esi + 0x4f3998]
call fcn.0045b640
cmp dword [ebp - 0xac], 0
jle 0x42823c
sub esp, 0xc
mov ecx, esp
push 1
call fcn.0045b620
lea ecx, [esi + 0x4f3740]
call fcn.0045b640
cmp dword [edi*4 + 0x4f3e8c], 0xffffffff
je 0x427fa9
mov eax, dword [edi*4 + 0x4f3e8c]
cmp eax, 0xffffffff
je 0x427f9e
cmp eax, 0x18f
ja 0x427f9e
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi*4 + 0x4f3e8c], 0xffffffff
xor eax, eax
mov esi, 0x508bc8
mov dword [ebp - 0xc4], eax
cmp byte [esi], 0
je 0x427fd4
inc eax
add esi, 0xcc
mov dword [ebp - 0xc4], eax
cmp eax, 0x190
jl 0x427fb6
or eax, 0xffffffff
jmp 0x428003
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045a200
mov eax, dword [ebp - 0xc4]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [edi*4 + 0x4f3e8c], eax
cmp eax, 0xffffffff
je 0x428068
mov esi, eax
mov dword [edi*4 + 0x4f446c], 0
cmp esi, 0xffffffff
je 0x428068
push 0x4d5490
push dword [ebp - 0xe4]
mov ecx, ebx
push dword [ebp - 0xe0]
push 8
push esi
push 0
call fcn.00426160
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x428068
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d4e30]
movups xmmword [eax + ebx + 0x13b04], xmm0
cmp dword [edi*4 + 0x4f3f58], 0xffffffff
je 0x4280a7
mov eax, dword [edi*4 + 0x4f3f58]
cmp eax, 0xffffffff
je 0x42809c
cmp eax, 0x18f
ja 0x42809c
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi*4 + 0x4f3f58], 0xffffffff
xor eax, eax
mov esi, 0x508bc8
mov dword [ebp - 0xc4], eax
cmp byte [esi], 0
je 0x4280d2
inc eax
add esi, 0xcc
mov dword [ebp - 0xc4], eax
cmp eax, 0x190
jl 0x4280b4
or eax, 0xffffffff
jmp 0x428101
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045a200
mov eax, dword [ebp - 0xc4]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [edi*4 + 0x4f3f58], eax
cmp eax, 0xffffffff
je 0x4281c4
mov dword [ebp - 0xcc], eax
mov eax, 0x38e38e39
mul edi
mov eax, edi
mov dword [edi*4 + 0x4f4538], 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 - 0xe4]
add eax, 3
mov dword [ebp - 0x100], ecx
push eax
mov eax, dword [ebp - 0xe0]
add ecx, 0x11d
add eax, 3
mov dword [ebp - 0xf8], ecx
push eax
lea eax, [esi + 0x1f]
mov ecx, ebx
mov esi, dword [ebp - 0xcc]
push eax
push esi
push 0
call fcn.00426160
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x4281c4
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d4e30]
movups xmmword [eax + ebx + 0x13b04], xmm0
push dword [ebp - 0xe4]
mov edx, dword [ebp - 0xe0]
lea edi, [ebp - 0xa8]
mov ecx, 0x21
mov esi, 0x4d26c8
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0xdc]
lea ecx, [ebp - 0xa8]
add esi, 0x17
mov dword [ebp - 0xa8], esi
call fcn.00403150
add esp, 4
mov eax, ecx
lea ecx, [ebx + 0xf2fc]
push eax
call fcn.004064b0
push esi
lea ecx, [ebx + 0xf2fc]
call fcn.004067f0
cmp dword [eax], 0xffffffff
je 0x428357
mov byte [eax + 0x84], 1
movups xmm0, xmmword [0x4d4e30]
movups xmmword [eax + 0x88], xmm0
jmp 0x428357
cmp dword [edi*4 + 0x4f3e8c], 0xffffffff
je 0x42827b
mov eax, dword [edi*4 + 0x4f3e8c]
cmp eax, 0xffffffff
je 0x428270
cmp eax, 0x18f
ja 0x428270
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi*4 + 0x4f3e8c], 0xffffffff
xor eax, eax
mov esi, 0x508bc8
mov dword [ebp - 0xc4], eax
cmp byte [esi], 0
je 0x4282a6
inc eax
add esi, 0xcc
mov dword [ebp - 0xc4], eax
cmp eax, 0x190
jl 0x428288
or eax, 0xffffffff
jmp 0x4282d5
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045a200
mov eax, dword [ebp - 0xc4]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov dword [edi*4 + 0x4f3e8c], eax
cmp eax, 0xffffffff
je 0x42833a
mov esi, eax
mov dword [edi*4 + 0x4f446c], 0
cmp esi, 0xffffffff
je 0x42833a
push 0x4d5480
push dword [ebp - 0xe4]
mov ecx, ebx
push dword [ebp - 0xe0]
push 8
push esi
push 0
call fcn.00426160
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x42833a
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d4e30]
movups xmmword [eax + ebx + 0x13b04], xmm0
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045b620
mov eax, dword [ebp - 0xcc]
lea ecx, [eax + 0x4f3740]
call fcn.0045b640
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 - 0xe0]
xor edx, edx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0xc0]
add eax, 0xc9
mov dword [ebp - 0xac], edx
mov dword [ebp - 0xc4], eax
mov eax, dword [ecx]
cmp eax, 0xffffffff
je 0x4283cf
cmp eax, 0x18f
ja 0x4283c9
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [ecx], 0xffffffff
mov esi, 0x508bc8
xor edi, edi
cmp byte [esi], 0
je 0x4283ef
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x4283d6
or edi, 0xffffffff
jmp 0x428424
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045a200
mov ecx, dword [ebp - 0xc0]
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 0x42849d
mov esi, edi
mov dword [ecx + 0x5e0], 0
cmp esi, 0xffffffff
je 0x42849d
mov eax, dword [ebp + edx*4 - 0x1c]
mov ecx, ebx
shl eax, 4
add eax, 0x4d4d30
push eax
mov eax, dword [ebp - 0xe4]
add eax, 0xab
push eax
push dword [ebp - 0xc4]
push 8
push esi
push 0
call fcn.00426160
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ebp - 0xac]
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x42849d
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d4e30]
movups xmmword [eax + ebx + 0x13b04], xmm0
add dword [ebp - 0xc4], 0x16
inc edx
add ecx, 0xcc
mov dword [ebp - 0xac], edx
mov dword [ebp - 0xc0], ecx
cmp edx, 2
jl 0x4283a4
mov ecx, dword [ebp - 0xb0]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, 0xa
jl 0x4284eb
mov dword [ebp - 0x1c], eax
lea eax, [eax + eax*4]
add eax, eax
sub ecx, eax
mov dword [ebp - 0x18], ecx
jmp 0x4284fc
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 - 0xe0]
xor ecx, ecx
mov edi, dword [ebp - 0xe8]
add edx, 0x106
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0xac], edx
nop dword [eax]
mov eax, dword [edi]
cmp eax, 0xffffffff
je 0x42854b
cmp eax, 0x18f
ja 0x428545
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [edi], 0xffffffff
mov esi, 0x508bc8
xor edi, edi
cmp byte [esi], 0
je 0x42856b
inc edi
add esi, 0xcc
cmp edi, 0x190
jl 0x428552
or edi, 0xffffffff
jmp 0x4285a0
lea ecx, [esi + 0xb4]
mov byte [esi], 1
call fcn.0045a200
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ebp - 0xac]
mov dword [esi + 0xb0], 0
mov dword [esi + 0xac], 0
mov dword [esi + 4], 0
mov esi, dword [ebp - 0xe8]
cmp edi, 0xffffffff
mov dword [esi], edi
mov edi, esi
je 0x42861c
mov dword [edi + 0x5e0], 0
mov esi, dword [edi]
cmp esi, 0xffffffff
je 0x42861c
mov eax, dword [ebp + ecx*4 - 0x1c]
mov ecx, ebx
shl eax, 4
add eax, 0x4d4d30
push eax
mov eax, dword [ebp - 0xe4]
add eax, 0xab
push eax
push edx
push 8
push esi
push 0
call fcn.00426160
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ebp - 0xac]
imul eax, esi, 0xcc
cmp byte [eax + ebx + 0x13a68], 0
je 0x42861c
or dword [eax + ebx + 0x13a70], 0x2000
movups xmm0, xmmword [0x4d4e30]
movups xmmword [eax + ebx + 0x13b04], xmm0
inc ecx
add edi, 0xcc
add edx, 0x16
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0xe8], edi
mov dword [ebp - 0xac], edx
cmp ecx, 2
jl 0x428520
mov edi, dword [ebp - 0xdc]
jmp 0x428694
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045b620
lea esi, [edi + edi*2]
lea ecx, [esi*4 + 0x4f3740]
call fcn.0045b640
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045b620
lea ecx, [esi*4 + 0x4f3998]
call fcn.0045b640
sub esp, 0xc
mov ecx, esp
push 0
call fcn.0045b620
lea ecx, [esi*4 + 0x4f3bf0]
call fcn.0045b640
inc edi
mov dword [ebp - 0xdc], edi
cmp edi, 0x32
jl 0x427b40
mov ecx, dword [ebp - 0xbc]
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 0x428714
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xb4], eax
push esi
push eax
sub esp, 0x18
mov ecx, esp
push str.CGTM_02d_02d.KG
call fcn.0045a080
lea eax, [ebp - 0x118]
push eax
call fcn.0045b140
add esp, 0x24
lea eax, [esi + 0x1f]
lea ecx, [ebp - 0x118]
push 0
push eax
call fcn.0045a620
push eax
mov ecx, ebx
call fcn.0041a590
mov eax, dword [ebp - 0xb4]
inc esi
cmp esi, edi
jl 0x4286d0
mov ecx, dword [ebp - 0xbc]
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 [0x4f3e68], eax
mov byte [ebx + 0xaed0d], cl
lea ecx, [ebx + 0xeea8]
call fcn.0044d3e0
cmp byte [0x4f3728], 0
mov eax, 0x64
mov ecx, 0x3c
mov dword [0x4f3e60], 0
cmovne eax, ecx
mov dword [ebx + 0x3ce28], eax
jmp case.0x427439.1
mov dword [ebx + 0x3ce28], 0x41
jmp case.0x427439.1
cmp byte [0x4f3728], 0
mov eax, 0x55
mov ecx, 0x32
cmove eax, ecx
mov dword [ebx + 0x3ce28], eax
jmp case.0x427439.1
mov dword [ebx + 0x3ce28], 0x57
jmp case.0x427439.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.004068c0
mov ecx, dword [ebx + 0xf310]
mov edi, dword [ebx + 0xf314]
sub ecx, 0x16
lea eax, [ecx - 1]
cmp eax, 0x31
ja 0x42880a
imul eax, dword [0x4f3710], 0x32
add ecx, eax
jmp 0x42880c
xor ecx, ecx
mov eax, dword [0x4f3e60]
cmp ecx, eax
cmovne eax, ecx
mov dword [0x4f3e60], 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 0x428849
mov ecx, esi
mov eax, edx
shr ecx, 0xd
shr eax, 0xd
xor al, cl
and al, cl
test al, 1
je 0x42884e
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 0x428899
lea esi, [ebx + 0xeea8]
mov eax, dword [esi + 0x7c]
lea ecx, [esi + 0x7c]
mov eax, dword [eax + 8]
call eax
test al, al
je 0x4288d0
cmp dword [esi + 0xa0], 1
jne 0x4288d0
lea esi, [ebx + 0xeea8]
push 3
mov ecx, esi
call fcn.0044d3e0
mov ecx, dword [0x4f3e64]
add ecx, 0x31
cmp ecx, dword [0x4f3e68]
cmovg ecx, dword [0x4f3e68]
mov dword [0x4f3e64], ecx
xor cl, cl
call fcn.00426db0
call fcn.00426f00
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 0x428902
mov eax, dword [esi + 0x7c]
lea ecx, [esi + 0x7c]
mov eax, dword [eax + 8]
call eax
test al, al
je 0x42892c
cmp dword [esi + 0xa0], 2
jne 0x42892c
push 3
mov ecx, esi
call fcn.0044d3e0
mov eax, dword [0x4f3e64]
mov ecx, 0
sub eax, 0x31
cmovs eax, ecx
xor cl, cl
mov dword [0x4f3e64], eax
call fcn.00426db0
call fcn.00426f00
movzx eax, word [ebx + 0xee06]
mov cl, byte [ebx + 0xee0a]
mov edx, dword [0x4f3700]
xor cl, al
mov esi, dword [0x4f3704]
and cl, al
test cl, 1
je 0x4289cb
test edx, edx
jle 0x428959
dec edx
jmp 0x42895c
lea edx, [esi - 1]
mov dword [0x4f3700], edx
test edx, edx
js 0x4289cb
cmp edx, esi
jge 0x4289cb
push dword [edx*8 + 0x4a19dc]
lea eax, [ebp - 0xf0]
push dword [edx*8 + 0x4a19d8]
lea ecx, [ebx + 0x2f0]
push eax
call fcn.00451350
lea edx, [ebp - 0xd0]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0xd0], ecx
lea ecx, [ebx + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0xcc], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0xcc]
push dword [ebp - 0xd0]
call dword [0x49a2b4]
mov esi, dword [0x4f3704]
mov edx, dword [0x4f3700]
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 0x428a5a
lea eax, [esi - 1]
cmp edx, eax
jge 0x4289f9
add edx, 1
mov dword [0x4f3700], edx
js 0x428a5a
jmp 0x428a01
xor edx, edx
mov dword [0x4f3700], edx
cmp edx, esi
jge 0x428a5a
push dword [edx*8 + 0x4a19dc]
lea eax, [ebp - 0xc8]
push dword [edx*8 + 0x4a19d8]
lea ecx, [ebx + 0x2f0]
push eax
call fcn.00451350
lea edx, [ebp - 0xd0]
push edx
mov ecx, dword [eax]
mov dword [ebp - 0xd0], ecx
lea ecx, [ebx + 0x218]
mov eax, dword [eax + 4]
mov dword [ebp - 0xcc], eax
mov eax, dword [ecx]
call dword [eax + 0x60]
push dword [ebp - 0xcc]
push dword [ebp - 0xd0]
call dword [0x49a2b4]
mov esi, dword [ebp - 0xd8]
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.0x428aac
movzx eax, byte [ebx + 0x42962c]
jmp dword [eax*4 + 0x429614]
push 2
mov ecx, esi
call fcn.00437150
mov dword [0x4f373c], 0
mov dword [esi + 0x3ce28], 0x384
jmp 0x428c2c
push 1
mov ecx, esi
call fcn.00437150
mov dword [0x4f373c], 0x15
mov dword [esi + 0x3ce28], 0x384
jmp 0x428c2c
push 1
mov ecx, esi
call fcn.00437150
mov dword [0x4f373c], 0x12
mov dword [esi + 0x3ce28], 0x384
jmp 0x428c2c
push 1
mov ecx, esi
call fcn.00437150
mov dword [0x4f373c], 0x17
mov dword [esi + 0x3ce28], 0x384
jmp 0x428c2c
push 1
mov ecx, esi
call fcn.00437150
push ecx
mov ecx, esi
call fcn.00416350
jmp 0x428c2c
cmp dword [0x4f3708], ebx
je 0x428c2c
push 1
mov ecx, esi
call fcn.00437150
mov dword [0x4f3708], ebx
mov dword [0x4f3710], 0
mov byte [0x4f3728], 1
mov dword [esi + 0x3ce28], 0x50
jmp 0x428c2c
add edi, 0xffffffe9
cmp edi, 0x31
ja 0x428c2c
push 1
mov ecx, esi
call fcn.00437150
push 1
lea ecx, [ebp - 0x148]
call fcn.0045b620
mov ecx, eax
call fcn.0045b5f0
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045b620
lea eax, [edi + edi*2]
lea ecx, [eax*4 + 0x4f3740]
call fcn.0045b6f0
test al, al
jne 0x428c2c
mov eax, dword [0x4f3710]
lea ecx, [esi + 0xf2fc]
add eax, dword [0x4f3708]
imul edx, eax, 0x32
push str.DUMMY
mov dword [0x4f3718], edi
mov dword [0x4f371c], 0
add edx, edi
mov eax, dword [edx*8 + 0x5a5180]
mov dword [0x4f3720], eax
mov eax, dword [edx*8 + 0x5a5184]
mov dword [0x4f3724], eax
call fcn.00405f90
mov byte [esi + 0xaed0d], 1
mov dword [esi + 0x3ce28], 0x190
test dword [esi + 0xee04], 0x4001
je case.0x427439.1
mov eax, dword [ebp - 0xb4]
add eax, 0xfffffb0a
cmp eax, 8
ja case.0x427439.1
mov eax, dword [ebp - 0xb0]
add eax, 0xffffffda
cmp eax, 0x233
ja case.0x427439.1
push dword [0x4f4440]
mov ecx, 0x4f5160
push dword [0x4f4a20]
call fcn.004262b0
test eax, eax
je 0x428c89
movups xmm0, xmmword [0x4d4e78]
movups xmmword [eax + 0x7c], xmm0
mov dword [esi + 0x3ce28], 0x96
jmp case.0x427439.1
cmp eax, 0x1c2
jg 0x4292e9
je 0x428d96
sub eax, 0x96
je 0x42915a
sub eax, 0x96
je case.0x427439.65
sub eax, 0x64
jne case.0x427439.1
mov byte [ebx + 0xaebe5], 1
nop
cmp byte [ebx + 0xaecc4], 0
jne 0x428cd0
mov eax, dword [0x4f4444]
cmp eax, 0xffffffff
je 0x428cfe
push dword [0x4f4a24]
mov ecx, 0x4f5160
push eax
call fcn.00426100
mov dword [0x4f4444], 0xffffffff
mov eax, dword [0x4f4448]
cmp eax, 0xffffffff
je 0x428d23
push dword [0x4f4a28]
mov ecx, 0x4f5160
push eax
call fcn.00426100
mov dword [0x4f4448], 0xffffffff
mov eax, dword [0x4f371c]
cmp eax, dword [0x4f3724]
jge 0x428d8c
push 1
lea ecx, [ebp - 0x154]
or esi, 4
call fcn.0045b620
mov ecx, eax
call fcn.0045b5f0
sub esp, 0xc
mov ecx, esp
push eax
call fcn.0045b620
mov eax, dword [0x4f3720]
add eax, dword [0x4f371c]
lea ecx, [eax*2 + 0xf79f]
add ecx, eax
lea ecx, [ebx + ecx*4]
call fcn.0045b6f0
test al, al
je 0x428e70
mov eax, dword [0x4f371c]
and esi, 0xfffffffb
inc eax
mov dword [0x4f371c], eax
cmp eax, dword [0x4f3724]
jl 0x428d30
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 0x4292cd
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 0x4292cd
mov ecx, edx
mov eax, esi
shr ecx, 0xe
shr eax, 0xe
xor al, cl
and al, cl
test al, 1
jne 0x4292cd
mov ecx, edx
mov eax, esi
shr ecx, 1
shr eax, 1
xor al, cl
and al, cl
test al, 1
jne 0x4292be
mov eax, esi
shr edx, 0xd
shr eax, 0xd
xor dl, al
and dl, al
test dl, 1
jne 0x4292be
cmp byte [0x4f3729], 0
je case.0x427439.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 0x4291ac
cmp edx, 0x10
mov ecx, esi
cmovle ecx, eax
mov eax, dword [0x4f3734]
neg ecx
lea edx, [eax + ecx*2]
mov dword [0x4f3734], edx
test edx, edx
jns 0x4291f4
xor edx, edx
mov dword [0x4f3734], edx
jmp 0x4291f4
mov ecx, dword [0x4f371c]
add ecx, dword [0x4f3720]
mov eax, ecx
mov byte [ebp - 0xb5], 1
shl eax, 5
cmp dword [eax + ebx + 0x6b68c], 1
jne 0x428ea1
push 3
push ecx
mov ecx, ebx
call fcn.00419bb0
jmp 0x428f9a
push 0xe
push ecx
mov ecx, ebx
mov byte [ebp - 0xb5], 0
call fcn.0041a190
push 3
push 0x80000000
mov ecx, ebx
call fcn.00419bb0
mov eax, dword [0x4f4448]
cmp eax, 0xffffffff
je 0x428ef2
cmp eax, 0x18f
ja 0x428ee8
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], 0
mov dword [eax + 0x51cb58], 0xffffffff
mov dword [0x4f4448], 0xffffffff
mov edi, 0x51cb54
xor esi, esi
nop dword [eax]
cmp byte [edi], 0
je 0x428f19
inc esi
add edi, 0xcc
cmp esi, 0x190
jl 0x428f00
or esi, 0xffffffff
jmp 0x428f42
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045a200
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 1
mov dword [0x4f4448], esi
cmp esi, 0xffffffff
je 0x428f9a
push 0
push 0
push 0
push 3
push esi
push 1
mov ecx, ebx
mov dword [0x4f4a28], 1
call fcn.00426160
imul eax, esi, 0xcc
add eax, 0x279f4
add eax, ebx
je 0x428f9a
push 0x2d0
push 0x500
push 0
mov dword [eax + 0xac], 2
add eax, 0x7c
push 0
push eax
call dword [0x49a320]
mov eax, dword [0x4f4444]
cmp eax, 0xffffffff
je 0x428fcc
cmp eax, 0x18f
ja 0x428fc2
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], 0
mov dword [eax + 0x51cb58], 0xffffffff
mov dword [0x4f4444], 0xffffffff
mov edi, 0x51cb54
xor esi, esi
cmp byte [edi], 0
je 0x428fec
inc esi
add edi, 0xcc
cmp esi, 0x190
jl 0x428fd3
or esi, 0xffffffff
jmp 0x429015
lea ecx, [edi + 0xb4]
mov byte [edi], 1
call fcn.0045a200
mov dword [edi + 0xb0], 0
mov dword [edi + 0xac], 0
mov dword [edi + 4], 1
mov dword [0x4f4444], esi
cmp esi, 0xffffffff
je 0x429144
cmp byte [ebp - 0xb5], 0
mov dword [0x4f4a24], 1
je 0x4290e3
push 0
push 0
push 0
push 3
push esi
push 1
mov ecx, ebx
call fcn.00426160
mov eax, dword [ebx + 0xa90]
mov dword [0x4f372c], eax
mov ecx, dword [ebx + 0xa94]
mov dword [0x4f3730], ecx
cmp eax, dword [ebx + 0xae804]
jg 0x429087
cmp ecx, dword [ebx + 0xae808]
jg 0x429087
mov dword [ebx + 0xd884], 0
mov byte [0x4f3729], 0
jmp 0x4290ac
mov dword [ebx + 0xd884], 2
mov byte [0x4f3729], 1
mov dword [0x4f3734], 0
mov dword [0x4f3738], 0
imul eax, esi, 0xcc
add eax, 0x279f4
add eax, ebx
je 0x429144
push 0x2d0
push 0x500
push 0
mov dword [eax + 0xac], 2
add eax, 0x7c
push 0
push eax
call dword [0x49a320]
jmp 0x429144
cmp byte [ebx + 0x38c8], 0
je 0x4290f4
mov ecx, dword [ebx + 0x38cc]
jmp 0x4290fa
mov ecx, dword [ebx + 0x3890]
mov eax, dword [ebx + 0xae804]
sub eax, ecx
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
cmp byte [ebx + 0x38c8], 0
je 0x42911a
mov edx, dword [ebx + 0x38d0]
jmp 0x429120
mov edx, dword [ebx + 0x3894]
mov eax, dword [ebx + 0xae808]
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.00426160
mov byte [0x4f3729], 0
mov byte [ebx + 0xaed0d], 0
mov dword [ebx + 0x3ce28], 0x1c2
jmp 0x428d96
test dword [ebx + 0xee04], 0x4001
jne 0x429194
push dword [0x4f4440]
mov ecx, 0x4f5160
push dword [0x4f4a20]
call fcn.004262b0
test eax, eax
je case.0x427439.65
movups xmm0, xmmword [0x4d4e68]
movups xmmword [eax + 0x7c], xmm0
jmp case.0x427439.65
mov ecx, edx
call fcn.00426ec0
mov cl, 1
call fcn.00426db0
call fcn.00426f00
jmp case.0x427439.1
mov ecx, dword [ebx + 0xae804]
lea eax, [ecx - 0x64]
cmp edx, eax
jle 0x4291ee
lea eax, [ecx - 0x10]
mov ecx, esi
cmp edx, eax
mov eax, 4
cmovge ecx, eax
mov eax, dword [0x4f3734]
lea edx, [eax + ecx*2]
mov eax, dword [0x4f372c]
mov dword [0x4f3734], edx
sub eax, dword [ebx + 0xae804]
cmp edx, eax
cmovg edx, eax
mov dword [0x4f3734], edx
jmp 0x4291f4
mov edx, dword [0x4f3734]
cmp edi, 0x64
jge 0x429222
cmp edi, 0x10
mov eax, 4
cmovle esi, eax
mov eax, dword [0x4f3738]
neg esi
lea ecx, [eax + esi*2]
mov dword [0x4f3738], ecx
test ecx, ecx
jns 0x429268
xor ecx, ecx
mov dword [0x4f3738], ecx
jmp 0x429268
mov ecx, dword [ebx + 0xae808]
lea eax, [ecx - 0x64]
cmp edi, eax
jle 0x429262
lea eax, [ecx - 0x10]
cmp edi, eax
mov eax, 4
cmovge esi, eax
mov eax, dword [0x4f3738]
lea ecx, [eax + esi*2]
mov eax, dword [0x4f3730]
mov dword [0x4f3738], ecx
sub eax, dword [ebx + 0xae808]
cmp ecx, eax
cmovg ecx, eax
mov dword [0x4f3738], ecx
jmp 0x429268
mov ecx, dword [0x4f3738]
mov esi, dword [0x4f4444]
cmp esi, 0xffffffff
je case.0x427439.1
cmp dword [0x4f4a24], 0
mov eax, 0x279f4
mov edi, 0x13a68
cmove eax, edi
imul esi, esi, 0xcc
add esi, eax
add esi, ebx
je case.0x427439.1
mov eax, dword [ebx + 0xae808]
add eax, ecx
push eax
mov eax, dword [ebx + 0xae804]
add eax, edx
push eax
push ecx
push edx
lea eax, [esi + 0x7c]
push eax
call dword [0x49a320]
jmp case.0x427439.1
mov dword [ebx + 0x3ce28], 0x1ea
jmp case.0x427439.1
inc dword [0x4f371c]
mov byte [ebx + 0xaed0d], 1
mov dword [ebx + 0x3ce28], 0x190
jmp case.0x427439.1
cmp eax, 0x1ea
je 0x429472
cmp eax, 0x384
jne case.0x427439.1
nop
cmp byte [ebx + 0xaecc4], 0
jne 0x429300
lea ecx, [ebx + 0xf2fc]
mov byte [ebx + 0xaed0d], 1
call fcn.00406170
mov ecx, 0x4f3e6c
mov eax, dword [ecx]
cmp eax, 0xffffffff
je 0x42937a
mov edx, dword [ecx + 0x5e0]
sub edx, 0
je 0x429356
sub edx, 1
jne 0x429374
cmp eax, 0x18f
ja 0x429374
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], dl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x429374
cmp eax, 0x18f
ja 0x429374
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [ecx], 0xffffffff
add ecx, 4
cmp ecx, 0x4f444c
jl 0x429320
lea ecx, [ebx + 0x28b4]
call fcn.00448130
lea ecx, [ebx + 0x3334]
call fcn.00448130
lea ecx, [ebx + 0xa64]
call fcn.0044df70
lea esi, [ebx + 0x6514]
mov edi, 3
mov ecx, esi
call fcn.00448130
add esi, 0x2a0
sub edi, 1
jne 0x4293b1
mov dword [ebx + 0x3ce28], edi
mov eax, dword [0x4f373c]
test eax, eax
jne 0x429467
mov eax, dword [ebx + 0x3cdcc]
sub eax, dword [ebx + 0x3cdc8]
test eax, 0xfffffffc
jg 0x42944c
mov eax, dword [ebx + 0x218]
lea ecx, [ebx + 0x218]
call dword [eax + 0x14]
push 0x10010
push 0x4b40c0
push 0x4b2bd0
test eax, eax
jne 0x429426
push eax
call dword [0x49a2c4]
xor eax, eax
mov dword [ebx + 0x3cdd4], eax
add dword [ebx + 0x3cdcc], 0xfffffffc
jmp case.0x427439.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.0x427439.1
mov eax, dword [ebx + 0x3cdcc]
mov eax, dword [eax - 4]
mov dword [ebx + 0x3cdd4], eax
add dword [ebx + 0x3cdcc], 0xfffffffc
jmp case.0x427439.1
mov dword [ebx + 0x3cdd4], eax
jmp case.0x427439.1
cmp byte [ebx + 0xaecc4], 0
jne 0x429472
mov dword [ebx + 0xd884], 0
mov byte [ebx + 0xaed0d], 0
mov eax, dword [0x4f4444]
cmp eax, 0xffffffff
je 0x4294ed
mov ecx, dword [0x4f4a24]
sub ecx, 0
je 0x4294c5
sub ecx, 1
jne 0x4294e3
cmp eax, 0x18f
ja 0x4294e3
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], cl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x4294e3
cmp eax, 0x18f
ja 0x4294e3
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [0x4f4444], 0xffffffff
mov eax, dword [0x4f4448]
cmp eax, 0xffffffff
je 0x42954e
mov ecx, dword [0x4f4a28]
sub ecx, 0
je 0x429526
sub ecx, 1
jne 0x429544
cmp eax, 0x18f
ja 0x429544
imul eax, eax, 0xcc
mov byte [eax + 0x51cb54], cl
mov dword [eax + 0x51cb58], 0xffffffff
jmp 0x429544
cmp eax, 0x18f
ja 0x429544
imul eax, eax, 0xcc
mov byte [eax + 0x508bc8], 0
mov dword [eax + 0x508bcc], 0xffffffff
mov dword [0x4f4448], 0xffffffff
lea ecx, [ebx + 0x3874]
call fcn.00448130
lea ecx, [ebx + 0xf2fc]
call fcn.00406170
mov byte [ebx + 0xaebe5], 0
mov dword [ebx + 0x3ce28], 0x64
lea ecx, [ebp - 0x118]
call fcn.0045a160
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.00461b73
mov esp, ebp
pop ebp
ret