Function at 0x4b5320
Capabilities:
Check os version
Contain obfuscated stackstrings
Get number of processors
Parse credit card information
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d1508
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x934
mov eax, dword [0x6dd1e4]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x8a0], edi
push 0
call dword [0x5dea68]
xor ecx, ecx
mov dword [ebp - 0x8a4], 0
call fcn.00515710
test eax, eax
je 0x4b538f
push eax
call fcn.0041e896
add esp, 4
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 4
push dword [eax + 0x3c]
call fcn.004f3c80
lea esi, [edi + 0x840]
test eax, eax
je 0x4b5438
push 0x60f764
push 0xffffffffffffffb0
mov ecx, esi
call fcn.004ee190
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x4ec], 0
push 0x60f79c
lea ecx, [edi + 0x264]
movq qword [ebp - 0x4f4], xmm0
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x4f4]
call fcn.0051e0c0
push 0
push 0
push 0
push 0xc
lea ecx, [ebp - 0x4f4]
mov dword [ebp - 4], 0
call fcn.0051dd30
mov edx, 0x64
mov ecx, eax
call fcn.004c5d20
lea ecx, [ebp - 0x4f4]
mov dword [ebp - 4], 0xffffffff
call fcn.0051dfd0
push 0x60f7c0
push 0xffffffffffffffff
mov ecx, esi
call fcn.004ee190
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x60f818
push dword [eax + 0x38]
call fcn.004f44b0
xorps xmm0, xmm0
mov dword [ebp - 0x230], 0
lea ecx, [ebp - 0x238]
movq qword [ebp - 0x238], xmm0
call fcn.0051e180
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x268]
xorps xmm0, xmm0
mov dword [ebp - 0x260], 0
movq qword [ebp - 0x268], xmm0
call fcn.0051e180
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x298]
xorps xmm0, xmm0
mov dword [ebp - 0x290], 0
movq qword [ebp - 0x298], xmm0
call fcn.0051e180
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1b8]
xorps xmm0, xmm0
mov dword [ebp - 0x1b0], 0
movq qword [ebp - 0x1b8], xmm0
call fcn.0051e180
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x49c]
xorps xmm0, xmm0
mov dword [ebp - 0x494], 0
movq qword [ebp - 0x49c], xmm0
call fcn.0051e180
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x3c4]
xorps xmm0, xmm0
mov dword [ebp - 0x3bc], 0
movq qword [ebp - 0x3c4], xmm0
call fcn.0051e180
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x334]
xorps xmm0, xmm0
mov dword [ebp - 0x32c], 0
movq qword [ebp - 0x334], xmm0
call fcn.0051e180
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x490]
xorps xmm0, xmm0
mov dword [ebp - 0x488], 0
movq qword [ebp - 0x490], xmm0
call fcn.0051e180
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x484]
xorps xmm0, xmm0
mov dword [ebp - 0x47c], 0
movq qword [ebp - 0x484], xmm0
call fcn.0051e180
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x328]
xorps xmm0, xmm0
mov dword [ebp - 0x320], 0
movq qword [ebp - 0x328], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0xa
xorps xmm0, xmm0
lea ecx, [ebp - 0x310]
movq qword [ebp - 0x310], xmm0
mov dword [ebp - 0x308], 0
call fcn.0051e180
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x40c]
xorps xmm0, xmm0
mov dword [ebp - 0x404], 0
movq qword [ebp - 0x40c], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x478]
xorps xmm0, xmm0
mov dword [ebp - 0x470], 0
movq qword [ebp - 0x478], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x46c]
xorps xmm0, xmm0
mov dword [ebp - 0x464], 0
movq qword [ebp - 0x46c], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x400]
xorps xmm0, xmm0
mov dword [ebp - 0x3f8], 0
movq qword [ebp - 0x400], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x304]
xorps xmm0, xmm0
mov dword [ebp - 0x2fc], 0
movq qword [ebp - 0x304], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x56c]
xorps xmm0, xmm0
mov dword [ebp - 0x564], 0
movq qword [ebp - 0x56c], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x460]
xorps xmm0, xmm0
mov dword [ebp - 0x458], 0
movq qword [ebp - 0x460], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x2f8]
xorps xmm0, xmm0
mov dword [ebp - 0x2f0], 0
movq qword [ebp - 0x2f8], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x454]
xorps xmm0, xmm0
mov dword [ebp - 0x44c], 0
movq qword [ebp - 0x454], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x14
call dword [0x5de4d8]
mov ecx, eax
call fcn.00509900
mov esi, eax
mov edx, str.HKLM
test esi, esi
mov dword [ebp - 0x89c], esi
mov eax, str.HKLM64
setne cl
test cl, cl
mov byte [ebp - 0x8a5], cl
cmove eax, edx
mov dword [ebp - 0x8b0], eax
lea ecx, [ebp - 0x238]
push 0
mov edx, 0x5fe50c
mov eax, str.HKLM32
push 0
cmove eax, edx
push 0x104
mov dword [ebp - 0x8c4], eax
call fcn.0051d530
push eax
push 1
push dword [edi + 0x38]
push 0x1a
push 0
call dword [0x5de5d4]
push 0
push 0
push 0x104
lea ecx, [ebp - 0x268]
call fcn.0051d530
push eax
push 1
push dword [edi + 0x38]
push 0x1c
push 0
call dword [0x5de5d4]
push 0
push 0
push 0x104
lea ecx, [ebp - 0x1b8]
call fcn.0051d530
push eax
push 1
push dword [edi + 0x38]
push 2
push 0
call dword [0x5de5d4]
push 0
push 0
push 0x104
lea ecx, [ebp - 0x3c4]
call fcn.0051d530
push eax
push 1
push dword [edi + 0x38]
push 0
push 0
call dword [0x5de5d4]
push 0
push 0
push 0x104
lea ecx, [ebp - 0x400]
call fcn.0051d530
push eax
push 1
push dword [edi + 0x38]
push 0x23
push 0
call dword [0x5de5d4]
push 0
push 0
push 0x104
lea ecx, [ebp - 0x490]
call fcn.0051d530
push eax
push 1
push dword [edi + 0x38]
push 7
push 0
call dword [0x5de5d4]
push 0
push 0
push 0x104
lea ecx, [ebp - 0x484]
call fcn.0051d530
push eax
push 1
push dword [edi + 0x38]
push 5
push 0
call dword [0x5de5d4]
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x334]
call fcn.0051d530
push eax
push 0x60f838
push dword [edi + 0x38]
call dword [0x5de814]
push 0x400
lea ecx, [ebp - 0x334]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x334]
call fcn.0051dd30
push eax
call dword [0x5de4dc]
push 0x104
push 0
push 0
push 0x104
lea ecx, [ebp - 0x328]
call fcn.0051d530
push eax
call dword [0x5de404]
test esi, esi
je 0x4b592c
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60f848
lea ecx, [ebp - 0x328]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x310]
call fcn.0051dda0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60f860
jmp 0x4b596e
push 0x104
push 0
push 0
push 0x104
lea ecx, [ebp - 0x310]
call fcn.0051d530
push eax
call dword [0x5de464]
cmp byte [ebp - 0x8a5], 0
je 0x4b5987
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60f874
lea ecx, [ebp - 0x328]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x40c]
call fcn.0051dda0
jmp 0x4b5999
lea eax, [ebp - 0x310]
push eax
lea ecx, [ebp - 0x40c]
call fcn.0051e080
push esi
lea edx, [ebp - 0x46c]
lea ecx, [ebp - 0x478]
call fcn.00505f10
push 0
push 0
push 0x104
lea ecx, [ebp - 0x304]
call fcn.0051d530
mov esi, dword [0x5de5d4]
push eax
push 1
push 0
push 0x2b
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x2f8]
call fcn.0051d530
push eax
push 1
push 0
push 0x17
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x454]
call fcn.0051d530
push eax
push 1
push 0
push 0x19
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x56c]
call fcn.0051d530
push eax
push 1
push 0
push 0x18
push 0
call esi
xorps xmm0, xmm0
mov dword [ebp - 0x1f8], 0
lea ecx, [ebp - 0x200]
movq qword [ebp - 0x200], xmm0
call fcn.0051e180
push 0
push 0
push 0x104
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x15
call fcn.0051d530
push eax
push 1
push 0
push 0x28
push 0
call esi
lea ecx, [ebp - 0x200]
call fcn.0051df40
push eax
lea ecx, [ebp - 0x238]
call fcn.0051ca50
lea ecx, [ebp - 0x200]
call fcn.0051df40
push eax
lea ecx, [ebp - 0x268]
call fcn.0051ca50
push 1
push 0x60f888
lea ecx, [ebp - 0x298]
call fcn.0051de00
lea ecx, [ebp - 0x200]
call fcn.0051df40
push eax
lea ecx, [ebp - 0x1b8]
call fcn.0051ca50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60f8b0
lea ecx, [ebp - 0x238]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x49c]
call fcn.0051dda0
lea ecx, [ebp - 0x200]
call fcn.0051df40
push eax
lea ecx, [ebp - 0x3c4]
call fcn.0051ca50
lea ecx, [ebp - 0x200]
call fcn.0051df40
push eax
lea ecx, [ebp - 0x334]
call fcn.0051ca50
lea ecx, [ebp - 0x200]
call fcn.0051df40
push eax
lea ecx, [ebp - 0x490]
call fcn.0051ca50
lea ecx, [ebp - 0x200]
call fcn.0051df40
push eax
lea ecx, [ebp - 0x484]
call fcn.0051ca50
push 1
lea ecx, [ebp - 0x304]
call fcn.0051dac0
lea eax, [ebp - 0x304]
push eax
lea ecx, [ebp - 0x460]
call fcn.0051e080
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5fe504
lea ecx, [ebp - 0x478]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x304]
call fcn.0051c280
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5fe504
lea ecx, [ebp - 0x46c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x460]
call fcn.0051c280
push fcn.005187c0
push fcn.00518880
push 3
push 4
lea eax, [ebp - 0x20]
push eax
call fcn.0041eeff
push fcn.00518890
push fcn.005188a0
push 3
push 0xc
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x16
push eax
call fcn.0041eeff
push fcn.005188e0
push fcn.005188f0
push 2
push 0x10
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x17
push eax
call fcn.0041eeff
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0xe0]
xorps xmm0, xmm0
mov dword [ebp - 0xd8], 0
movq qword [ebp - 0xe0], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xec]
xorps xmm0, xmm0
mov dword [ebp - 0xe4], 0
movq qword [ebp - 0xec], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x70]
xorps xmm0, xmm0
mov dword [ebp - 0x68], 0
movq qword [ebp - 0x70], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x1b
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa0]
call fcn.004fcac0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push dword [eax + 0xa0]
call fcn.004f1d80
xorps xmm0, xmm0
movlpd qword [ebp - 0xbc], xmm0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa0]
call fcn.004f3070
mov dword [ebp - 0xbc], eax
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 0x1c
call fcn.005122d0
call fcn.00512280
push edx
push eax
lea ecx, [edi + 0x60]
call fcn.0051d070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60f904
lea ecx, [edi + 0x60]
call fcn.0051dd30
push eax
push 0x60f910
lea ecx, [edi + 0x6c]
call fcn.0051dd30
push eax
lea ecx, [edi + 0x60]
call fcn.0051dda0
xorps xmm0, xmm0
lea ecx, [edi + 0x60]
push 0
push 0x22
movups xmmword [ebp - 0x130], xmm0
movups xmmword [ebp - 0x120], xmm0
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x130]
call fcn.0050c8c0
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x1d
call fcn.0050c7b0
test eax, eax
jne 0x4b5d62
lea ecx, [edi + 0x60]
call fcn.0051dfa0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60f920
lea ecx, [edi + 0x264]
call fcn.0051dd30
push eax
push 0x60f964
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x130]
call fcn.0050bb00
cmp dword [ebp - 0x89c], 0
jne 0x4b5db8
cmp byte [ebp - 0x8a5], 0
mov eax, 0x5feae8
jne 0x4b5dbd
mov eax, 0x5feaf0
push 0
push 0
push 0
push 0
push 0
push 0x60f978
push eax
push 0x60940c
push 0x60f98c
push 0x60f9a0
lea ecx, [edi + 0x264]
call fcn.0051dd30
push eax
push 0x60f9b8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x130]
call fcn.0050bb00
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x4a8]
call fcn.00512340
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60f9bc
lea ecx, [ebp - 0x70]
call fcn.0051dd30
push eax
push 0x60f9c8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x130]
call fcn.0050bb00
push 0
push 0x60fa00
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x28], 0
mov eax, dword [ebp - 0xbc]
cmp dword [eax], 0
je 0x4b8792
push 0x60fa60
lea esi, [edi + 0x840]
mov dword [ebp - 0x8ac], 0
push 0xffffffffffffffff
mov ecx, esi
call fcn.004ee190
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa0]
call fcn.004f4b70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60fa9c
lea ecx, [edi + 0x78]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xe0]
call fcn.0051dda0
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
call dword [0x5de620]
test eax, eax
je 0x4b87aa
mov eax, dword [ebp - 0xbc]
lea ecx, [ebp - 0x7e8]
xorps xmm0, xmm0
movlpd qword [ebp - 0x7e8], xmm0
mov eax, dword [eax]
inc eax
push eax
call fcn.00403300
mov byte [ebp - 4], 0x1e
mov edx, dword [ebp - 0x7e8]
test edx, edx
jne 0x4b5f2c
mov byte [ebp - 4], 0x1d
jmp 0x4b87aa
mov eax, dword [ebp - 0xbc]
mov ecx, 1
mov dword [ebp - 0x8b4], ecx
cmp dword [eax], ecx
jl 0x4b623b
mov esi, 0x58
mov dword [ebp - 0x890], esi
mov eax, dword [eax + ecx*4]
mov dword [esi + edx], eax
mov eax, dword [ebp - 0xbc]
push dword [eax + ecx*4]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa0]
call fcn.004f2a50
test eax, eax
je 0x4b6210
mov eax, dword [eax]
lea ecx, [ebp - 0xec]
cdq
push edx
push eax
call fcn.0051d120
mov esi, dword [ebp - 0x7e8]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
lea ecx, [esi + 4]
add ecx, dword [ebp - 0x890]
push 0x800
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60c030
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
mov eax, dword [ebp - 0x7e8]
mov ecx, dword [ebp - 0x890]
add eax, 4
add ecx, eax
call fcn.0051df40
add dword [ebp - 0x8ac], eax
lea ecx, [ebp - 0xe0]
mov esi, dword [ebp - 0x7e8]
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
lea ecx, [esi + 0x10]
add ecx, dword [ebp - 0x890]
push 0x800
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee3c
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
mov esi, dword [ebp - 0x7e8]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
lea ecx, [esi + 0x1c]
add ecx, dword [ebp - 0x890]
push 0x800
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60fac0
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
mov esi, dword [ebp - 0x7e8]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x80
push 0
push 0
lea ecx, [esi + 0x28]
add ecx, dword [ebp - 0x890]
push 0x80
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee58
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
mov esi, dword [ebp - 0x7e8]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x80
push 0
push 0
lea ecx, [esi + 0x34]
add ecx, dword [ebp - 0x890]
push 0x80
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60fae4
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
mov esi, dword [ebp - 0x7e8]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x80
push 0
push 0
lea ecx, [esi + 0x4c]
add ecx, dword [ebp - 0x890]
push 0x80
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60faf4
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x8b4]
mov esi, dword [ebp - 0x7e8]
push 1
push dword [eax + ecx*4]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa0]
call fcn.004f2da0
lea ecx, [esi + 0x40]
add ecx, dword [ebp - 0x890]
push eax
call fcn.0051dd60
mov ecx, dword [ebp - 0x7e8]
mov esi, dword [ebp - 0x890]
add ecx, 0x40
push 0x60fb0c
add ecx, esi
call fcn.0051e060
test al, al
je 0x4b61cc
mov ecx, dword [ebp - 0x7e8]
add ecx, 0x40
add ecx, esi
call fcn.0051dfa0
mov ecx, dword [ebp - 0x7e8]
add ecx, 4
add ecx, esi
call fcn.0051dd30
mov ecx, eax
call fcn.00509340
mov ecx, dword [ebp - 0x7e8]
add ecx, 4
add ecx, esi
test al, al
je 0x4b6202
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.00502d70
jmp 0x4b6210
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.005032a0
mov ecx, dword [ebp - 0x8b4]
add esi, 0x58
mov eax, dword [ebp - 0xbc]
inc ecx
mov dword [ebp - 0x8b4], ecx
mov dword [ebp - 0x890], esi
cmp ecx, dword [eax]
jg 0x4b623b
mov edx, dword [ebp - 0x7e8]
jmp 0x4b5f50
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0xa
push dword [eax + 0x44]
call fcn.004f1310
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax]
mov dword [ebp - 0x890], eax
test eax, eax
jle 0x4b6b4f
imul esi, eax, 0x58
mov dword [ebp - 0x89c], esi
nop word [eax + eax]
mov ecx, dword [ebp - 0x7e8]
add ecx, 0x4c
add ecx, esi
call fcn.0051df40
test eax, eax
je 0x4b629f
mov ecx, dword [ebp - 0x7e8]
push 2
add ecx, 0x4c
push 0
add ecx, esi
call fcn.0051dd30
push eax
call dword [0x5dea58]
mov ecx, dword [ebp - 0x7e8]
add ecx, 4
add ecx, esi
call fcn.0051df40
cmp eax, 0xa
jl 0x4b6b31
mov ecx, dword [ebp - 0x7e8]
add ecx, 0x28
add ecx, esi
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b5240
mov ecx, dword [ebp - 0x7e8]
add ecx, 0x28
mov dword [ebp - 0x8b4], eax
push 0x60fb20
add ecx, esi
call fcn.0051e060
mov byte [ebp - 0x889], al
test al, al
jne 0x4b6302
cmp dword [ebp - 0x8b4], 0
jl 0x4b6b31
xorps xmm0, xmm0
mov dword [ebp - 0x4e0], 0
lea ecx, [ebp - 0x4e8]
movq qword [ebp - 0x4e8], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0xd4]
xorps xmm0, xmm0
mov dword [ebp - 0xcc], 0
movq qword [ebp - 0xd4], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x13c]
xorps xmm0, xmm0
mov dword [ebp - 0x134], 0
movq qword [ebp - 0x13c], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x7e8]
add ecx, 0x34
add ecx, esi
call fcn.0051df40
test eax, eax
je 0x4b63b9
mov ecx, dword [ebp - 0x7e8]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
add ecx, 0x34
push 0x5fe65c
add ecx, esi
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xd4]
call fcn.0051dda0
jmp 0x4b6403
mov eax, dword [ebp - 0x7e8]
lea ecx, [ebp - 0xd4]
add eax, 4
add eax, esi
push eax
call fcn.0051e080
push 1
lea ecx, [ebp - 0xd4]
call fcn.0051dac0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5fe65c
lea ecx, [ebp - 0xd4]
call fcn.0051c4c0
lea ecx, [ebp - 0xd4]
call fcn.0051df40
cmp eax, 2
jl 0x4b6b0c
push 0x60fb38
lea ecx, [ebp - 0xd4]
call fcn.0051e060
test al, al
jne 0x4b6b0c
mov eax, dword [ebp - 0x7e8]
lea ecx, [ebp - 0x13c]
add eax, 0x40
add eax, esi
push eax
call fcn.0051e080
lea ecx, [ebp - 0x13c]
call fcn.0051df40
cmp eax, 4
jl 0x4b647e
push 0x60fb0c
lea ecx, [ebp - 0x13c]
call fcn.0051e060
test al, al
jne 0x4b647e
push str.Microsoft
lea ecx, [ebp - 0x13c]
call fcn.0051e060
test al, al
je 0x4b6489
lea ecx, [ebp - 0x13c]
call fcn.0051dfa0
cmp byte [ebp - 0x889], 0
je 0x4b687a
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x8b4], 0
jbe 0x4b65d7
xor eax, eax
mov dword [ebp - 0x898], eax
mov edi, dword [edi + 0x44]
lea ecx, [ebp - 0xd4]
push 0
push 0
add edi, eax
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x238]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov edi, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
push 0
push 0
mov edi, dword [edi + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x268]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
push 0
push 0
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x298]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
push 0
push 0
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x1b8]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov ecx, dword [ebp - 0x8b4]
mov edi, dword [ebp - 0x8a0]
inc ecx
mov eax, dword [ebp - 0x898]
add eax, 0xc
mov dword [ebp - 0x8b4], ecx
mov dword [ebp - 0x898], eax
cmp ecx, dword [edi + 0x30]
jb 0x4b64b2
push 0
push 0
push 0
lea ecx, [ebp - 0xd4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1b8]
call fcn.0051dd30
mov edx, 0x5fe504
mov ecx, eax
call fcn.004906b0
push 0
push 0
push 0
lea ecx, [ebp - 0xd4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x400]
call fcn.0051dd30
mov edx, 0x5fe504
mov ecx, eax
call fcn.004906b0
push 0
push 0
push 0
lea ecx, [ebp - 0xd4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x2f8]
call fcn.0051dd30
mov edx, 0x5fe504
mov ecx, eax
call fcn.004906b0
lea ecx, [ebp - 0x13c]
call fcn.0051df40
test eax, eax
je 0x4b6ad9
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x8b4], 0
jbe 0x4b67da
xor eax, eax
mov dword [ebp - 0x898], eax
mov edi, dword [edi + 0x44]
lea ecx, [ebp - 0xd4]
add edi, eax
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x238]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x268]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x298]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x1b8]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov ecx, dword [ebp - 0x8b4]
mov eax, dword [ebp - 0x898]
inc ecx
add eax, 0xc
mov dword [ebp - 0x8b4], ecx
mov dword [ebp - 0x898], eax
mov edi, dword [ebp - 0x8a0]
cmp ecx, dword [edi + 0x30]
jb 0x4b6681
push 0
lea ecx, [ebp - 0xd4]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1b8]
call fcn.0051dd30
mov edx, 0x5fe504
mov ecx, eax
call fcn.004906b0
push 0
lea ecx, [ebp - 0xd4]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x400]
call fcn.0051dd30
mov edx, 0x5fe504
mov ecx, eax
call fcn.004906b0
push 0
lea ecx, [ebp - 0xd4]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x2f8]
call fcn.0051dd30
mov edx, 0x5fe504
jmp 0x4b6ad2
mov eax, dword [ebp - 0x8b4]
test eax, eax
js 0x4b6ad9
mov edi, dword [edi + 0x44]
lea eax, [eax + eax*2]
shl eax, 2
lea ecx, [ebp - 0xd4]
push 0
push 0
mov dword [ebp - 0x898], eax
add edi, eax
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x238]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
push 0
push 0
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x268]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
push 0
push 0
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x298]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
push 0
push 0
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x1b8]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
lea ecx, [ebp - 0x13c]
call fcn.0051df40
test eax, eax
je 0x4b6ad9
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x238]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x268]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x298]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
mov eax, dword [ebp - 0x8a0]
lea ecx, [ebp - 0xd4]
mov edi, dword [eax + 0x44]
add edi, dword [ebp - 0x898]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x13c]
call fcn.0051dd30
push eax
push 0x5fe504
lea ecx, [ebp - 0x1b8]
call fcn.0051dd30
mov ecx, edi
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.004906b0
lea ecx, [ebp - 0x13c]
call fcn.0051dfd0
lea ecx, [ebp - 0xd4]
call fcn.0051dfd0
lea ecx, [ebp - 0x4e8]
mov byte [ebp - 4], 0x1e
call fcn.0051dfd0
mov edi, dword [ebp - 0x8a0]
mov esi, dword [ebp - 0x89c]
jmp 0x4b6b31
lea ecx, [ebp - 0x13c]
call fcn.0051dfd0
lea ecx, [ebp - 0xd4]
call fcn.0051dfd0
lea ecx, [ebp - 0x4e8]
mov byte [ebp - 4], 0x1e
call fcn.0051dfd0
mov eax, dword [ebp - 0x890]
sub esi, 0x58
dec eax
mov dword [ebp - 0x89c], esi
mov dword [ebp - 0x890], eax
test eax, eax
jg 0x4b6270
xorps xmm0, xmm0
mov dword [ebp - 0xfc], 0
lea ecx, [ebp - 0x104]
movq qword [ebp - 0x104], xmm0
call fcn.0051e180
mov byte [ebp - 4], 0x22
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x14
push dword [eax + 0x44]
call fcn.004f1310
mov esi, dword [ebp - 0x8ac]
test esi, esi
je 0x4b6e37
push 0
push 0x20019
push 0x60fb50
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x8b8], 0x60fb50
mov dword [ebp - 0x8b4], 0x60fb6c
call fcn.00518810
push 0
push 0x20019
push 0x60fb6c
lea ecx, [ebp - 0x1c]
call fcn.00518810
xorps xmm0, xmm0
mov dword [ebp - 0x26c], 0
lea ecx, [ebp - 0x274]
movq qword [ebp - 0x274], xmm0
call fcn.0051e180
xor esi, esi
mov byte [ebp - 4], 0x23
mov dword [ebp - 0x898], esi
nop dword [eax]
lea ecx, [ebp - 0x20]
add ecx, esi
call fcn.00518070
test eax, eax
je 0x4b6e0a
lea edi, [eax - 1]
test edi, edi
js 0x4b6e0a
nop dword [eax]
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x20]
push edi
add ecx, esi
call fcn.00518170
test al, al
je 0x4b6e01
push 0
mov esi, dword [ebp + esi - 0x8b8]
lea ecx, [ebp - 0x104]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60fba0
push dword [ebp - 0x44]
push 0x5fe504
push esi
call fcn.0051dda0
push 0
push 0x20019
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.00518810
test al, al
je 0x4b6ca2
lea eax, [ebp - 0x274]
push eax
push 0x5fe50c
lea ecx, [ebp - 0x18]
call fcn.00518530
test al, al
jne 0x4b6d6a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60fbc0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x104]
push 0x5fe504
push esi
call fcn.0051dda0
push 0
push 0x20019
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.00518810
test al, al
je 0x4b6d02
lea eax, [ebp - 0x274]
push eax
push 0x5fe50c
lea ecx, [ebp - 0x18]
call fcn.00518530
test al, al
jne 0x4b6d6a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60fbe0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x104]
push 0x5fe504
push esi
call fcn.0051dda0
push 0
push 0x20019
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.00518810
test al, al
je 0x4b6dfb
lea eax, [ebp - 0x274]
push eax
push 0x5fe50c
lea ecx, [ebp - 0x18]
call fcn.00518530
test al, al
je 0x4b6dfb
push 0
lea ecx, [ebp - 0x274]
call fcn.0051d7b0
lea ecx, [ebp - 0x274]
call fcn.0051df40
cmp eax, 4
jl 0x4b6dfb
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x89c], 1
cmp dword [eax], 1
jl 0x4b6dfb
mov esi, 0x58
mov ecx, dword [ebp - 0x7e8]
add ecx, 4
add ecx, esi
call fcn.0051da30
test al, al
jne 0x4b6de1
mov ecx, dword [ebp - 0x7e8]
push 0
push 1
push 1
add ecx, 4
push 0
add ecx, esi
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x274]
call fcn.0051c760
test eax, eax
jne 0x4b7034
mov ecx, dword [ebp - 0x89c]
add esi, 0x58
mov eax, dword [ebp - 0xbc]
inc ecx
mov dword [ebp - 0x89c], ecx
cmp ecx, dword [eax]
jle 0x4b6da1
mov esi, dword [ebp - 0x898]
sub edi, 1
jns 0x4b6c20
add esi, 4
mov dword [ebp - 0x898], esi
cmp esi, 8
jl 0x4b6c00
lea ecx, [ebp - 0x274]
mov byte [ebp - 4], 0x22
call fcn.0051dfd0
mov edi, dword [ebp - 0x8a0]
mov esi, dword [ebp - 0x8ac]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x1e
push dword [eax + 0x44]
call fcn.004f1310
test esi, esi
je 0x4b711d
push 0
push 0x20019
push 0x60fc08
lea ecx, [ebp - 0x20]
call fcn.00518810
lea ecx, [ebp - 0x20]
call fcn.00518070
xorps xmm0, xmm0
mov dword [ebp - 0x20c], 0
lea ecx, [ebp - 0x214]
movq qword [ebp - 0x214], xmm0
mov esi, eax
call fcn.0051e180
mov byte [ebp - 4], 0x24
test esi, esi
je 0x4b7108
lea eax, [esi - 1]
mov dword [ebp - 0x89c], eax
test eax, eax
js 0x4b7108
mov edi, eax
nop dword [eax]
lea eax, [ebp - 0x44]
push eax
push edi
lea ecx, [ebp - 0x20]
call fcn.00518170
test al, al
je 0x4b70f9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x104]
push 0x5fe504
push 0x60fc08
call fcn.0051dda0
push 0
push 0x20019
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1c]
call fcn.00518810
lea eax, [ebp - 0x214]
push eax
push 0x60b654
lea ecx, [ebp - 0x1c]
call fcn.00518530
test al, al
je 0x4b6f32
lea ecx, [ebp - 0x214]
call fcn.0051df40
cmp eax, 4
jge 0x4b6fa3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60fc58
lea ecx, [ebp - 0x104]
call fcn.0051c4c0
push 0
push 0x20019
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1c]
call fcn.00518810
lea eax, [ebp - 0x214]
push eax
push 0x60fc70
lea ecx, [ebp - 0x1c]
call fcn.00518530
test al, al
je 0x4b70f9
lea ecx, [ebp - 0x214]
call fcn.0051df40
cmp eax, 4
jl 0x4b70f9
push 0
lea ecx, [ebp - 0x214]
call fcn.0051d7b0
lea ecx, [ebp - 0x214]
call fcn.0051df40
cmp eax, 4
jl 0x4b70f9
mov eax, dword [ebp - 0xbc]
mov esi, 1
cmp dword [eax], esi
jl 0x4b70f9
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051da30
test al, al
jne 0x4b7024
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x214]
call fcn.0051c760
test eax, eax
jne 0x4b709f
mov eax, dword [ebp - 0xbc]
inc esi
cmp esi, dword [eax]
jle 0x4b6fe0
jmp 0x4b70f9
mov esi, dword [ebp - 0x898]
lea ecx, [ebp - 0x104]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x44]
push 0x5fe504
push dword [ebp + esi - 0x8b8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.005173d0
test al, al
jne 0x4b6e01
push 0
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.005173d0
jmp 0x4b6e01
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x104]
push 0x5fe504
push 0x60fc08
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1c]
call fcn.005173d0
test al, al
jne 0x4b70f9
push 0
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1c]
call fcn.005173d0
sub edi, 1
jns 0x4b6eb0
mov edi, dword [ebp - 0x8a0]
lea ecx, [ebp - 0x214]
mov byte [ebp - 4], 0x22
call fcn.0051dfd0
mov esi, dword [ebp - 0x8ac]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x28
push dword [eax + 0x44]
call fcn.004f1310
call fcn.0051a560
movsd xmm1, qword [0x6be4d8]
comisd xmm1, xmm0
jbe 0x4b7500
test esi, esi
je 0x4b7bf2
push 0xc
lea ecx, [ebp - 0x31c]
call fcn.00401eb0
lea ecx, [ebp - 0x31c]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 0x25
call fcn.00401eb0
lea ecx, [ebp - 0x220]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x37c]
mov byte [ebp - 4], 0x26
call fcn.00401eb0
lea ecx, [ebp - 0x37c]
call fcn.0051e180
push 4
lea ecx, [ebp - 0x7f4]
mov byte [ebp - 4], 0x27
call fcn.00401ed0
lea ecx, [ebp - 0x7f4]
call fcn.00401a90
lea eax, [ebp - 0x7f4]
mov byte [ebp - 4], 0x28
push eax
push 0x60a0a8
push 1
push 0
push 0x608e04
call dword [0x5dea70]
test eax, eax
js 0x4b74cb
push 4
lea ecx, [ebp - 0x80c]
call fcn.00401ed0
lea ecx, [ebp - 0x80c]
call fcn.00401a90
mov byte [ebp - 4], 0x29
lea edx, [ebp - 0x80c]
mov eax, dword [ebp - 0x7f4]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x14]
call eax
test eax, eax
js 0x4b74c0
mov eax, dword [ebp - 0x80c]
lea edx, [ebp - 0x194]
push edx
mov dword [ebp - 0x194], 0
lea edx, [ebp - 0x818]
push edx
mov ecx, dword [eax]
push 5
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
js 0x4b74c0
mov esi, dword [0x5dea74]
nop
mov eax, dword [ebp - 0x194]
test eax, eax
je 0x4b74ba
xor edi, edi
test eax, eax
je 0x4b748c
nop dword [eax + eax]
mov eax, dword [ebp - 0x818]
lea ecx, [ebp - 0x31c]
push dword [eax + edi*4]
call fcn.0051e0b0
mov eax, dword [ebp - 0x818]
push dword [eax + edi*4]
call esi
push 4
lea ecx, [ebp - 0x804]
call fcn.00401ed0
lea ecx, [ebp - 0x804]
call fcn.00401a90
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x31c]
mov eax, dword [ebp - 0x7f4]
mov esi, dword [eax]
lea eax, [ebp - 0x804]
push eax
push 0x60e110
call fcn.0051dd30
push eax
push dword [ebp - 0x7f4]
mov eax, dword [esi + 0x18]
call eax
test eax, eax
js 0x4b746a
mov eax, dword [ebp - 0x804]
lea edx, [ebp - 0x82c]
mov dword [ebp - 0x82c], 0
mov dword [ebp - 0x828], 0
push edx
mov ecx, dword [eax]
push eax
mov eax, dword [ecx + 0x84]
call eax
mov eax, dword [ebp - 0x804]
lea edx, [ebp - 0x828]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x8c]
call eax
push dword [ebp - 0x82c]
lea ecx, [ebp - 0x220]
call fcn.0051e0b0
push dword [ebp - 0x828]
lea ecx, [ebp - 0x37c]
call fcn.0051e0b0
mov eax, dword [ebp - 0x82c]
mov esi, dword [0x5dea74]
test eax, eax
je 0x4b7357
push eax
call esi
mov eax, dword [ebp - 0x828]
test eax, eax
je 0x4b7364
push eax
call esi
lea ecx, [ebp - 0x37c]
call fcn.0051df40
test eax, eax
je 0x4b73a3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x37c]
call fcn.0051dd30
push eax
push 0x5ff58c
lea ecx, [ebp - 0x220]
call fcn.0051c4c0
push 0
lea ecx, [ebp - 0x220]
call fcn.0051d7b0
push 0
push 0
push 0x5fe50c
push 0x5ff6d4
lea ecx, [ebp - 0x220]
call fcn.0051c000
lea ecx, [ebp - 0x220]
call fcn.0051df40
cmp eax, 4
jl 0x4b746a
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.00403fe0
cmp dword [eax], esi
jl 0x4b746a
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051da30
test al, al
jne 0x4b7437
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x220]
call fcn.0051c760
test eax, eax
jne 0x4b744b
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.00403fe0
cmp esi, dword [eax]
jle 0x4b73f3
jmp 0x4b746a
mov eax, dword [ebp - 0x7f4]
lea ecx, [ebp - 0x31c]
mov esi, dword [eax]
call fcn.0051dd30
push eax
push dword [ebp - 0x7f4]
mov eax, dword [esi + 0x1c]
call eax
lea ecx, [ebp - 0x804]
mov byte [ebp - 4], 0x29
call fcn.004031b0
mov esi, dword [0x5dea74]
inc edi
cmp edi, dword [ebp - 0x194]
jb 0x4b7270
push dword [ebp - 0x818]
call esi
mov eax, dword [ebp - 0x80c]
lea edx, [ebp - 0x194]
push edx
lea edx, [ebp - 0x818]
push edx
mov ecx, dword [eax]
push 5
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
jns 0x4b7250
mov edi, dword [ebp - 0x8a0]
lea ecx, [ebp - 0x80c]
call fcn.004031b0
lea ecx, [ebp - 0x7f4]
call fcn.004031b0
lea ecx, [ebp - 0x37c]
call fcn.0051dfd0
lea ecx, [ebp - 0x220]
call fcn.0051dfd0
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x22
call fcn.0051dfd0
jmp 0x4b7bf2
test esi, esi
je 0x4b7bf2
push 4
lea ecx, [ebp - 0x7f0]
call fcn.00401ed0
lea ecx, [ebp - 0x7f0]
call fcn.00401a90
lea eax, [ebp - 0x7f0]
push eax
push 0x5f88fc
push 1
push 0
push 0x5f8b0c
call dword [0x5dea70]
test eax, eax
jns 0x4b7553
lea ecx, [ebp - 0x7f0]
mov byte [ebp - 4], 0x22
call fcn.004031b0
jmp 0x4b7bf2
lea ecx, [ebp - 0x920]
call fcn.00401e10
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x910]
movups xmmword [ebp - 0x8c0], xmm0
call fcn.00401e10
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x900]
movups xmmword [ebp - 0x8e0], xmm0
call fcn.00401e10
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x940]
movups xmmword [ebp - 0x8f0], xmm0
call fcn.00401e10
mov edi, eax
mov byte [ebp - 4], 0x2f
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x8c0]
mov ecx, dword [ebp - 0x7f0]
mov edx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
mov esi, dword [ecx]
movups xmmword [edx], xmm0
movups xmm0, xmmword [ebp - 0x8e0]
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x8f0]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [edi]
push ecx
movups xmmword [eax], xmm0
mov eax, dword [esi + 0x28]
call eax
lea ecx, [ebp - 0x940]
mov esi, eax
call fcn.00401ea0
lea ecx, [ebp - 0x900]
call fcn.00401ea0
lea ecx, [ebp - 0x910]
call fcn.00401ea0
lea ecx, [ebp - 0x920]
mov byte [ebp - 4], 0x2b
call fcn.00401ea0
test esi, esi
js 0x4b7bdd
push 4
lea ecx, [ebp - 0x7fc]
call fcn.00401ed0
lea ecx, [ebp - 0x7fc]
call fcn.00401a90
push 0x5fe504
lea ecx, [ebp - 0x8c8]
mov byte [ebp - 4], 0x30
call fcn.00401b70
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x7f0]
mov esi, dword [ecx]
lea ecx, [ebp - 0x7fc]
push ecx
mov ecx, eax
call fcn.00401c30
push eax
push dword [ebp - 0x7f0]
mov eax, dword [esi + 0x1c]
call eax
lea ecx, [ebp - 0x8c8]
mov byte [ebp - 4], 0x30
mov esi, eax
call fcn.00401c20
test esi, esi
js 0x4b7bd2
push 4
lea ecx, [ebp - 0x814]
call fcn.00401ed0
lea ecx, [ebp - 0x814]
call fcn.00401a90
mov byte [ebp - 4], 0x32
lea edx, [ebp - 0x814]
mov eax, dword [ebp - 0x7fc]
push edx
push 1
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x38]
call eax
test eax, eax
js 0x4b7bc7
mov eax, dword [ebp - 0x814]
lea edx, [ebp - 0x208]
mov dword [ebp - 0x208], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
push 0xc
lea ecx, [ebp - 0x4d0]
call fcn.00401eb0
lea ecx, [ebp - 0x4d0]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x340]
mov byte [ebp - 4], 0x33
call fcn.00401eb0
lea ecx, [ebp - 0x340]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0x34
call fcn.00401eb0
lea ecx, [ebp - 0x4dc]
call fcn.0051e180
mov esi, 1
mov byte [ebp - 4], 0x35
mov dword [ebp - 0x89c], esi
cmp dword [ebp - 0x208], esi
jl 0x4b7ba6
push 4
lea ecx, [ebp - 0x7f8]
mov dword [ebp - 0x824], 0
call fcn.00401ed0
lea ecx, [ebp - 0x7f8]
call fcn.00401a90
push 3
push esi
lea ecx, [ebp - 0x930]
mov byte [ebp - 4], 0x36
call fcn.00401e20
mov esi, eax
mov byte [ebp - 4], 0x37
lea edx, [ebp - 0x7f8]
mov ecx, dword [ebp - 0x814]
movups xmm0, xmmword [esi]
push edx
sub esp, 0x10
mov eax, dword [ecx]
mov edx, esp
push ecx
mov eax, dword [eax + 0x20]
movups xmmword [edx], xmm0
call eax
lea ecx, [ebp - 0x930]
mov byte [ebp - 4], 0x36
mov esi, eax
call fcn.00401ea0
test esi, esi
js 0x4b7b7e
mov eax, dword [ebp - 0x7f8]
lea edx, [ebp - 0x824]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
test eax, eax
js 0x4b7b7e
push dword [ebp - 0x824]
lea ecx, [ebp - 0x4d0]
call fcn.0051e0b0
push dword [ebp - 0x824]
mov esi, dword [0x5de554]
call esi
push 4
lea ecx, [ebp - 0x808]
call fcn.00401ed0
lea ecx, [ebp - 0x808]
call fcn.00401a90
mov byte [ebp - 4], 0x38
lea edx, [ebp - 0x808]
mov eax, dword [ebp - 0x7f8]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x4c]
call eax
test eax, eax
js 0x4b7b73
push 4
lea ecx, [ebp - 0x810]
call fcn.00401ed0
lea ecx, [ebp - 0x810]
call fcn.00401a90
mov byte [ebp - 4], 0x39
lea edx, [ebp - 0x810]
mov eax, dword [ebp - 0x808]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x44]
call eax
test eax, eax
js 0x4b7b68
mov eax, dword [ebp - 0x810]
lea edx, [ebp - 0x204]
mov dword [ebp - 0x204], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
mov edi, 1
cmp dword [ebp - 0x204], edi
jl 0x4b7b68
nop dword [eax]
nop dword [eax + eax]
push 4
lea ecx, [ebp - 0x7ec]
call fcn.00401ed0
lea ecx, [ebp - 0x7ec]
call fcn.00401a90
mov byte [ebp - 4], 0x3a
lea edx, [ebp - 0x7ec]
mov eax, dword [ebp - 0x810]
push edx
push edi
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x20]
call eax
test eax, eax
jns 0x4b78fa
lea ecx, [ebp - 0x7ec]
mov byte [ebp - 4], 0x39
call fcn.004031b0
jmp 0x4b7b5b
mov eax, dword [ebp - 0x7ec]
lea edx, [ebp - 0x4ac]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x24]
call eax
test eax, eax
jns 0x4b7927
lea ecx, [ebp - 0x7ec]
mov byte [ebp - 4], 0x39
call fcn.004031b0
jmp 0x4b7b5b
cmp dword [ebp - 0x4ac], 0
je 0x4b7944
lea ecx, [ebp - 0x7ec]
mov byte [ebp - 4], 0x39
call fcn.004031b0
jmp 0x4b7b5b
push 4
lea ecx, [ebp - 0x800]
call fcn.00401ed0
lea ecx, [ebp - 0x800]
call fcn.00401a90
mov byte [ebp - 4], 0x3b
lea edx, [ebp - 0x800]
mov eax, dword [ebp - 0x7ec]
push edx
push str.MbLk
push eax
mov ecx, dword [eax]
mov eax, dword [ecx]
call eax
test eax, eax
jns 0x4b799c
lea ecx, [ebp - 0x800]
call fcn.004031b0
lea ecx, [ebp - 0x7ec]
mov byte [ebp - 4], 0x39
call fcn.004031b0
jmp 0x4b7b5b
mov eax, dword [ebp - 0x800]
lea edx, [ebp - 0x820]
mov dword [ebp - 0x820], 0
mov dword [ebp - 0x81c], 0
push edx
mov ecx, dword [eax]
push eax
mov eax, dword [ecx + 0x28]
call eax
mov eax, dword [ebp - 0x800]
lea edx, [ebp - 0x81c]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x30]
call eax
push dword [ebp - 0x820]
lea ecx, [ebp - 0x340]
call fcn.0051e0b0
push dword [ebp - 0x81c]
lea ecx, [ebp - 0x4dc]
call fcn.0051e0b0
mov eax, dword [ebp - 0x820]
test eax, eax
je 0x4b7a09
push eax
call esi
mov eax, dword [ebp - 0x81c]
test eax, eax
je 0x4b7a16
push eax
call esi
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x4dc]
call fcn.0051dd30
push eax
push 0x5ff58c
lea ecx, [ebp - 0x340]
call fcn.0051c4c0
push 0
lea ecx, [ebp - 0x340]
call fcn.0051d7b0
lea ecx, [ebp - 0x340]
call fcn.0051df40
cmp eax, 4
jge 0x4b7a82
lea ecx, [ebp - 0x800]
call fcn.004031b0
lea ecx, [ebp - 0x7ec]
mov byte [ebp - 4], 0x39
call fcn.004031b0
jmp 0x4b7b5b
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.00403fe0
cmp dword [eax], esi
jl 0x4b7b3b
nop dword [eax]
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051da30
test al, al
jne 0x4b7ae4
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x340]
call fcn.0051c760
test eax, eax
jne 0x4b7af8
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.00403fe0
cmp esi, dword [eax]
jle 0x4b7aa0
jmp 0x4b7b3b
lea ecx, [ebp - 0x4d0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x8cc]
call fcn.00401b70
mov byte [ebp - 4], 0x3c
mov ecx, dword [ebp - 0x7fc]
push 0
mov esi, dword [ecx]
mov ecx, eax
call fcn.00401c30
push eax
push dword [ebp - 0x7fc]
mov eax, dword [esi + 0x3c]
call eax
lea ecx, [ebp - 0x8cc]
call fcn.00401c20
lea ecx, [ebp - 0x800]
call fcn.004031b0
lea ecx, [ebp - 0x7ec]
mov byte [ebp - 4], 0x39
call fcn.004031b0
mov esi, dword [0x5de554]
inc edi
cmp edi, dword [ebp - 0x204]
jle 0x4b78b0
lea ecx, [ebp - 0x810]
call fcn.004031b0
lea ecx, [ebp - 0x808]
call fcn.004031b0
lea ecx, [ebp - 0x7f8]
mov byte [ebp - 4], 0x35
call fcn.004031b0
mov esi, dword [ebp - 0x89c]
inc esi
mov dword [ebp - 0x89c], esi
cmp esi, dword [ebp - 0x208]
jle 0x4b7753
lea ecx, [ebp - 0x4dc]
call fcn.0051dfd0
lea ecx, [ebp - 0x340]
call fcn.0051dfd0
lea ecx, [ebp - 0x4d0]
call fcn.0051dfd0
lea ecx, [ebp - 0x814]
call fcn.004031b0
lea ecx, [ebp - 0x7fc]
call fcn.004031b0
lea ecx, [ebp - 0x7f0]
mov byte [ebp - 4], 0x22
call fcn.004031b0
mov edi, dword [ebp - 0x8a0]
movzx ecx, byte [ebp - 0x8a5]
mov edx, 0xc
mov esi, dword [edi + 0x30]
inc ecx
add esi, ecx
xor ecx, ecx
mov eax, esi
mov dword [ebp - 0x890], esi
mul edx
mov dword [ebp - 0x89c], esi
seto cl
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call fcn.0041eeca
add esp, 4
mov dword [ebp - 0x8b4], eax
mov byte [ebp - 4], 0x3d
test eax, eax
je 0x4b7c66
push fcn.0051dfd0
push fcn.0051e180
push esi
mov dword [eax], esi
add eax, 4
push 0xc
push eax
mov dword [ebp - 0x898], eax
call fcn.0041eeff
mov edx, dword [ebp - 0x898]
jmp 0x4b7c6e
xor edx, edx
mov dword [ebp - 0x898], edx
mov byte [ebp - 4], 0x22
xor esi, esi
mov eax, dword [edi + 0x30]
test eax, eax
je 0x4b7ccb
lea ecx, [edi + 0x3c]
mov dword [ebp - 0x8b4], edx
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60fc88
push esi
call fcn.004038d0
mov ecx, eax
call fcn.0051dd30
mov ecx, dword [ebp - 0x8b4]
push eax
push str.HKU_
call fcn.0051dda0
add dword [ebp - 0x8b4], 0xc
lea ecx, [edi + 0x3c]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4b7c84
mov esi, dword [ebp - 0x898]
lea eax, [eax + eax*2]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60fce0
push dword [ebp - 0x8b0]
lea ecx, [esi + eax*4]
call fcn.0051dda0
cmp byte [ebp - 0x8a5], 0
je 0x4b7d32
mov eax, dword [edi + 0x30]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
inc eax
push 0
push 0x60fce0
push dword [ebp - 0x8c4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.0051dda0
push 8
lea ecx, [ebp - 0x574]
call fcn.004020d0
push esi
lea ecx, [ebp - 0x574]
call fcn.00403a30
mov byte [ebp - 4], 0x3e
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x32
push dword [eax + 0x44]
call fcn.004f1310
cmp dword [ebp - 0x8ac], 0
je 0x4b7f6c
push 0xc
lea ecx, [ebp - 0x394]
mov dword [ebp - 0x8bc], 0x60fd38
mov dword [ebp - 0x8b8], 0x60fd40
mov dword [ebp - 0x8b4], 0x60fd50
call fcn.00401eb0
lea ecx, [ebp - 0x394]
call fcn.0051e180
cmp dword [ebp - 0x890], 0
mov byte [ebp - 4], 0x3f
jbe 0x4b7f5d
xor eax, eax
mov dword [ebp - 0x89c], eax
nop dword [eax + eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp + eax*4 - 0x8bc]
mov ecx, esi
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x104]
call fcn.0051dda0
push 0
push 0x20019
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00518810
test al, al
je 0x4b7f2b
lea ecx, [ebp - 0x20]
call fcn.00518010
test eax, eax
je 0x4b7f2b
lea edi, [eax - 1]
test edi, edi
js 0x4b7f2b
nop dword [eax]
lea eax, [ebp - 0x44]
push eax
push edi
lea ecx, [ebp - 0x20]
call fcn.005180d0
test al, al
je 0x4b7f1c
lea eax, [ebp - 0x394]
push eax
push dword [ebp - 0x44]
lea ecx, [ebp - 0x20]
call fcn.00518530
lea ecx, [ebp - 0x394]
call fcn.0051df40
cmp eax, 4
jl 0x4b7f1c
push 0
lea ecx, [ebp - 0x394]
call fcn.0051d7b0
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.00403fe0
cmp dword [eax], esi
jl 0x4b7f1c
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051da30
test al, al
jne 0x4b7ed6
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x394]
call fcn.0051c760
test eax, eax
jne 0x4b7eea
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.00403fe0
cmp esi, dword [eax]
jle 0x4b7e92
jmp 0x4b7f1c
push dword [ebp - 0x44]
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1c]
call fcn.005173d0
test al, al
jne 0x4b7f1c
push dword [ebp - 0x44]
lea ecx, [ebp - 0x104]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1c]
call fcn.005173d0
sub edi, 1
jns 0x4b7e30
mov esi, dword [ebp - 0x898]
mov eax, dword [ebp - 0x89c]
inc eax
mov dword [ebp - 0x89c], eax
cmp eax, 3
jb 0x4b7dc0
add esi, 0xc
sub dword [ebp - 0x890], 1
mov dword [ebp - 0x898], esi
jne 0x4b7db3
mov edi, dword [ebp - 0x8a0]
lea ecx, [ebp - 0x394]
mov byte [ebp - 4], 0x3e
call fcn.0051dfd0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x3c
push dword [eax + 0x44]
call fcn.004f1310
cmp dword [ebp - 0x8ac], 0
je 0x4b80ca
xor esi, esi
cmp dword [edi + 0x30], esi
jbe 0x4b80ca
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x3c4]
call fcn.0051dd30
push eax
push esi
lea ecx, [edi + 0x44]
call fcn.004038d0
mov ecx, eax
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x104]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xbc]
call fcn.00403fe0
lea ecx, [ebp - 0x104]
push dword [eax]
push dword [ebp - 0x7e8]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b48d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x1b8]
call fcn.0051dd30
push eax
push esi
lea ecx, [edi + 0x44]
call fcn.004038d0
mov ecx, eax
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x104]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xbc]
call fcn.00403fe0
lea ecx, [ebp - 0x104]
push dword [eax]
push dword [ebp - 0x7e8]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b48d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x49c]
call fcn.0051dd30
push eax
push esi
lea ecx, [edi + 0x44]
call fcn.004038d0
mov ecx, eax
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x104]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xbc]
call fcn.00403fe0
lea ecx, [ebp - 0x104]
push dword [eax]
push dword [ebp - 0x7e8]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b48d0
inc esi
cmp esi, dword [edi + 0x30]
jb 0x4b7f94
push 0
lea ecx, [ebp - 0xbc]
call fcn.00403fe0
lea ecx, [ebp - 0x454]
push dword [eax]
push dword [ebp - 0x7e8]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b48d0
push 0
lea ecx, [ebp - 0xbc]
call fcn.00403fe0
lea ecx, [ebp - 0x2f8]
push dword [eax]
push dword [ebp - 0x7e8]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b48d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x41
push dword [eax + 0x44]
call fcn.004f1310
cmp dword [ebp - 0x8ac], 0
je 0x4b858d
xor edi, edi
mov esi, str.HKCR
mov dword [ebp - 0x8b4], edi
cmp edi, 1
jne 0x4b8156
cmp byte [ebp - 0x8a5], 0
je 0x4b8587
push 0xc
lea ecx, [ebp - 0x34c]
call fcn.00401eb0
lea ecx, [ebp - 0x34c]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x3ac]
mov byte [ebp - 4], 0x40
call fcn.00401eb0
lea ecx, [ebp - 0x3ac]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x3a0]
mov byte [ebp - 4], 0x41
call fcn.00401eb0
lea ecx, [ebp - 0x3a0]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x4c4]
mov byte [ebp - 4], 0x42
call fcn.00401eb0
cmp edi, 1
lea ecx, [ebp - 0x4c4]
mov eax, 0x60fd64
push 1
cmovne eax, esi
push eax
call fcn.0051e110
push 4
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x43
call fcn.00401ed0
lea ecx, [ebp - 0x150]
call fcn.00518880
push 4
lea ecx, [ebp - 0x190]
mov byte [ebp - 4], 0x44
call fcn.00401ed0
lea ecx, [ebp - 0x190]
call fcn.00518880
push 4
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x45
call fcn.00401ed0
lea ecx, [ebp - 0x14c]
call fcn.00518880
push 0xc
lea ecx, [ebp - 0x87c]
mov byte [ebp - 4], 0x46
call fcn.00401eb0
lea ecx, [ebp - 0x87c]
call fcn.005188a0
push 0xc
lea ecx, [ebp - 0x888]
mov byte [ebp - 4], 0x47
call fcn.00401eb0
lea ecx, [ebp - 0x888]
call fcn.005188a0
push 0
push 0x20019
lea ecx, [ebp - 0x4c4]
mov byte [ebp - 4], 0x48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x150]
call fcn.00518810
test al, al
je 0x4b8510
lea eax, [ebp - 0x87c]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x89c], esi
call fcn.00518170
test al, al
je 0x4b850b
nop dword [eax]
mov eax, dword [ebp - 0x87c]
test eax, eax
je 0x4b82c4
cmp word [eax], 0x2e
je 0x4b84e3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60fd88
push eax
push 0x5fe504
lea ecx, [ebp - 0x4c4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x3ac]
call fcn.0051dda0
push 0
push 0x20019
lea ecx, [ebp - 0x3ac]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x190]
call fcn.00518810
test al, al
je 0x4b84e3
lea ecx, [ebp - 0x190]
call fcn.00518070
test eax, eax
je 0x4b84e3
lea edi, [eax - 1]
test edi, edi
js 0x4b84e3
nop word [eax + eax]
lea eax, [ebp - 0x888]
push eax
push edi
lea ecx, [ebp - 0x150]
call fcn.00518170
test al, al
je 0x4b84d4
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.Command
push dword [ebp - 0x888]
lea ecx, [ebp - 0x3ac]
push 0x5fe504
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x34c]
call fcn.0051dda0
push 0
push 0x20019
lea ecx, [ebp - 0x34c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x14c]
call fcn.00518810
test al, al
je 0x4b84d4
lea eax, [ebp - 0x3a0]
push eax
push 0x5fe50c
lea ecx, [ebp - 0x14c]
call fcn.00518530
test al, al
je 0x4b84d4
push 0
lea ecx, [ebp - 0x3a0]
call fcn.0051d7b0
lea ecx, [ebp - 0x3a0]
call fcn.0051df40
cmp eax, 4
jl 0x4b84d4
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.00403fe0
cmp dword [eax], esi
jl 0x4b84d4
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051da30
test al, al
jne 0x4b8456
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x3a0]
call fcn.0051c760
test eax, eax
jne 0x4b846a
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.00403fe0
cmp esi, dword [eax]
jle 0x4b8412
jmp 0x4b84d4
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x888]
lea ecx, [ebp - 0x3ac]
push 0x5fe504
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x34c]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x34c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x14c]
call fcn.005173d0
test al, al
jne 0x4b84d4
push 0
lea ecx, [ebp - 0x34c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x14c]
call fcn.005173d0
sub edi, 1
jns 0x4b8340
mov esi, dword [ebp - 0x89c]
lea eax, [ebp - 0x87c]
inc esi
push eax
push esi
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x89c], esi
call fcn.00518170
test al, al
jne 0x4b82b0
mov edi, dword [ebp - 0x8b4]
mov esi, str.HKCR
lea ecx, [ebp - 0x888]
call fcn.00518890
lea ecx, [ebp - 0x87c]
call fcn.00518890
lea ecx, [ebp - 0x14c]
call fcn.005187c0
lea ecx, [ebp - 0x190]
call fcn.005187c0
lea ecx, [ebp - 0x150]
call fcn.005187c0
lea ecx, [ebp - 0x4c4]
call fcn.0051dfd0
lea ecx, [ebp - 0x3a0]
call fcn.0051dfd0
lea ecx, [ebp - 0x3ac]
call fcn.0051dfd0
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x3e
call fcn.0051dfd0
inc edi
mov dword [ebp - 0x8b4], edi
cmp edi, 2
jl 0x4b8144
mov edi, dword [ebp - 0x8a0]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x46
push dword [eax + 0x44]
call fcn.004f1310
push 0
lea ecx, [ebp - 0xbc]
call fcn.00403fe0
mov esi, dword [eax]
test esi, esi
jle 0x4b8759
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
push eax
call dword [0x5de620]
test eax, eax
je 0x4b8610
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.00502d70
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
push 0xc
lea ecx, [ebp - 0x50c]
call fcn.00401eb0
push esi
lea ecx, [ebp - 0xbc]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x50c]
call fcn.0051e110
push esi
lea ecx, [ebp - 0x7e8]
mov byte [ebp - 4], 0x49
call fcn.00403280
lea ecx, [eax + 4]
call fcn.0051dd30
push eax
call dword [0x5de620]
lea ecx, [ebp - 0x50c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test eax, eax
je 0x4b8695
or dword [ebp - 0x8a4], 2
push 0x60fd98
jmp 0x4b869a
push 0x60fe04
call fcn.0051dd30
push eax
push 0x60f9b8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 0x10]
call fcn.0051df40
cmp eax, 0x28
jle 0x4b8708
push 0
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 0x10]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
test al, al
jne 0x4b8708
push 0
push esi
lea ecx, [ebp - 0x7e8]
call fcn.00403280
lea ecx, [eax + 0x10]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
push esi
lea ecx, [ebp - 0xbc]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.004f31f0
inc dword [edi + 0x28]
lea ecx, [ebp - 0x50c]
inc dword [edi + 0x2c]
mov byte [ebp - 4], 0x3e
call fcn.0051dfd0
dec esi
test esi, esi
jg 0x4b85b4
push 0
push 0x60477c
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
lea ecx, [ebp - 0x574]
call fcn.004038f0
lea ecx, [ebp - 0x104]
call fcn.0051dfd0
lea ecx, [ebp - 0x7e8]
mov byte [ebp - 4], 0x1d
call fcn.00403290
jmp 0x4b87a4
push 0
push 0x60fe40
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
lea esi, [edi + 0x840]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa0]
call fcn.004f1d80
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa0]
call fcn.004f4b70
push 0
push 0x60fe90
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
push 8
lea ecx, [ebp - 0x1ac]
call fcn.004020d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa4]
call fcn.004f3070
push eax
lea ecx, [ebp - 0x1ac]
call fcn.00403a30
mov byte [ebp - 4], 0x4a
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x4b
push dword [eax + 0x44]
call fcn.004f1310
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ccb8
lea ecx, [edi + 0x78]
push 0x5fe504
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xe0]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x1ac]
call fcn.00403fe0
push 0
cmp dword [eax], 0
je 0x4b909e
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa4]
call fcn.004f1d80
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa4]
call fcn.004f4b70
push 0x60ff00
push 0xffffffffffffffff
mov ecx, esi
call fcn.004ee190
push 0xc
lea ecx, [ebp - 0x28c]
call fcn.00401eb0
lea ecx, [ebp - 0x28c]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 0x4b
call fcn.00401eb0
lea ecx, [ebp - 0x3b8]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x4c
call fcn.00401eb0
lea ecx, [ebp - 0x168]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x4d
call fcn.00401eb0
lea ecx, [ebp - 0x174]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0x4e
call fcn.00401eb0
lea ecx, [ebp - 0x244]
call fcn.0051e180
push 0
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 0x4f
call fcn.00403fe0
mov esi, dword [eax]
mov dword [ebp - 0x8b4], esi
test esi, esi
jle 0x4b904f
nop dword [eax]
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x889], 0
call fcn.00403fe0
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.004f2e50
push esi
lea ecx, [ebp - 0x1ac]
mov dword [ebp - 0x89c], eax
call fcn.00403fe0
mov ecx, dword [edi + 8]
push dword [eax]
push dword [ecx + 0xa4]
mov ecx, dword [edi + 4]
call fcn.004f2a50
test eax, eax
je 0x4b9040
mov eax, dword [eax]
lea ecx, [ebp - 0xec]
cdq
push edx
push eax
call fcn.0051d120
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x28c]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee3c
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x80
push 0
push 0
push 0x80
lea ecx, [ebp - 0x174]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee58
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x244]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee6c
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x3b8]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60c030
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
push esi
lea ecx, [ebp - 0x1ac]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x168]
call fcn.0051dd60
lea ecx, [ebp - 0x70]
call fcn.0051dfa0
mov eax, dword [ebp - 0x89c]
cmp eax, 0xb
jne 0x4b8bf8
lea ecx, [ebp - 0x28c]
call fcn.0051df40
test eax, eax
je 0x4b8fd7
lea ecx, [ebp - 0x244]
call fcn.0051dd30
lea ecx, [ebp - 0x28c]
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4b8b86
mov byte [ebp - 0x889], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x174]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x244]
call fcn.0051dd30
push eax
push 0x60ffc0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
mov esi, dword [ebp - 0x8b4]
jmp 0x4b8fd7
lea ecx, [ebp - 0x244]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x28c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4b8b3e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x174]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x244]
call fcn.0051dd30
push eax
push 0x60ff60
lea ecx, [ebp - 0x70]
call fcn.0051dda0
mov esi, dword [ebp - 0x8b4]
jmp 0x4b8fd7
cmp eax, 0xc
jne 0x4b8ce0
lea ecx, [ebp - 0x3b8]
call fcn.0051df40
test eax, eax
je 0x4b8fd7
lea ecx, [ebp - 0x3b8]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
cmp al, 1
je 0x4b8c52
lea ecx, [ebp - 0x3b8]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
lea ecx, [ebp - 0x174]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test al, al
jne 0x4b8c90
push 0x60ff48
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x610028
jmp 0x4b8fcf
cmp al, 2
jne 0x4b8cba
push 0x610078
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x6100a0
jmp 0x4b8fcf
push 0x60ff48
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x6100f8
jmp 0x4b8fcf
cmp eax, 0xd
jne 0x4b8d91
lea ecx, [ebp - 0x168]
call fcn.0051dd30
mov dl, 1
mov ecx, eax
call fcn.004ca570
mov byte [ebp - 0x889], al
lea ecx, [ebp - 0x174]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test al, al
jne 0x4b8d41
push 0x60ff48
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x610150
jmp 0x4b8fcf
cmp al, 2
jne 0x4b8d6b
push 0x610078
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x610198
jmp 0x4b8fcf
push 0x60ff48
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x6101e8
jmp 0x4b8fcf
cmp eax, 0xe
jne 0x4b8f40
push 0xc
lea ecx, [ebp - 0x280]
mov byte [ebp - 0x889], 0
call fcn.00401eb0
lea ecx, [ebp - 0x280]
call fcn.0051e180
push 0
push 0x20019
lea ecx, [ebp - 0x28c]
mov byte [ebp - 4], 0x50
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00518810
test al, al
je 0x4b8eef
lea eax, [ebp - 0x280]
push eax
lea ecx, [ebp - 0x244]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00518530
test al, al
je 0x4b8eef
push 0
push 1
push 1
push 0
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x280]
call fcn.0051c760
test eax, eax
je 0x4b8eef
push 0
push 0
push 0x5fe50c
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x280]
call fcn.0051c000
push 0
push 0
push 0x604a10
push 0x61024c
lea ecx, [ebp - 0x280]
call fcn.0051c000
lea ecx, [ebp - 0x280]
call fcn.0051df40
cmp eax, 3
jge 0x4b8e7e
lea ecx, [ebp - 0x280]
call fcn.0051dfa0
push 0
lea ecx, [ebp - 0x280]
call fcn.0051dd30
push eax
push 7
lea ecx, [ebp - 0x244]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x28c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005179e0
mov byte [ebp - 0x889], al
test al, al
je 0x4b8eef
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x174]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x6102a8
jmp 0x4b8f24
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x174]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x610258
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x280]
mov byte [ebp - 4], 0x4f
call fcn.0051dfd0
jmp 0x4b8fd7
cmp eax, 0xf
jne 0x4b8fd7
push 0
push 0x5fe50c
push 1
lea ecx, [ebp - 0x244]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x28c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005179e0
mov byte [ebp - 0x889], al
lea ecx, [ebp - 0x174]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
jne 0x4b8fb3
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x610300
jmp 0x4b8fcf
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x168]
call fcn.0051dd30
push eax
push 0x610348
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
mov cl, byte [ebp - 0x889]
test cl, cl
je 0x4b901a
push esi
lea ecx, [ebp - 0x1ac]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.004f31f0
mov cl, byte [ebp - 0x889]
xor eax, eax
test cl, cl
setne al
add dword [edi + 0x2c], eax
mov eax, dword [ebp - 0x8a4]
inc dword [edi + 0x28]
or eax, 2
cmp cl, 2
cmovne eax, dword [ebp - 0x8a4]
mov dword [ebp - 0x8a4], eax
dec esi
mov dword [ebp - 0x8b4], esi
test esi, esi
jg 0x4b8950
push 0
push 0x60477c
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
lea ecx, [ebp - 0x244]
call fcn.0051dfd0
lea ecx, [ebp - 0x174]
call fcn.0051dfd0
lea ecx, [ebp - 0x168]
call fcn.0051dfd0
lea ecx, [ebp - 0x3b8]
call fcn.0051dfd0
lea ecx, [ebp - 0x28c]
mov byte [ebp - 4], 0x4a
call fcn.0051dfd0
jmp 0x4b90ae
push 0x60fe40
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa4]
call fcn.004f1d80
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa4]
call fcn.004f4b70
push 0
push 0x6103a0
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
push 8
lea ecx, [ebp - 0xa8]
call fcn.004020d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa8]
call fcn.004f3070
push eax
lea ecx, [ebp - 0xa8]
call fcn.00403a30
mov byte [ebp - 4], 0x51
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x50
push dword [eax + 0x44]
call fcn.004f1310
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610420
push 0x5fe504
lea ecx, [edi + 0x78]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xe0]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
cmp dword [eax], 0
je 0x4bf92e
mov ecx, 0x610444
call fcn.00502f40
mov ecx, 0x610468
call fcn.00502f40
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push dword [eax + 0xa8]
call fcn.004f1d80
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa8]
call fcn.004f4b70
push 0x610488
push 0xffffffffffffffff
lea ecx, [edi + 0x840]
call fcn.004ee190
push 0xc
lea ecx, [ebp - 0xa0]
call fcn.00401eb0
lea ecx, [ebp - 0xa0]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x52
call fcn.00401eb0
lea ecx, [ebp - 0x88]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x53
call fcn.00401eb0
lea ecx, [ebp - 0x94]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x54
call fcn.00401eb0
lea ecx, [ebp - 0x7c]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x2ec]
mov byte [ebp - 4], 0x55
call fcn.00401eb0
lea ecx, [ebp - 0x2ec]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x56
call fcn.00401eb0
lea ecx, [ebp - 0x110]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x57
call fcn.00401eb0
lea ecx, [ebp - 0xb4]
call fcn.0051e180
push 0
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x58
call fcn.00403fe0
mov eax, dword [eax]
mov dword [ebp - 0x890], eax
test eax, eax
jle 0x4bf8cc
push eax
lea ecx, [ebp - 0xa8]
mov byte [ebp - 0x889], 0
call fcn.00403fe0
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2e50
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
mov esi, eax
call fcn.00403fe0
mov ecx, dword [edi + 8]
push dword [eax]
push dword [ecx + 0xa8]
mov ecx, dword [edi + 4]
call fcn.004f2a50
test eax, eax
je 0x4bf8b7
mov eax, dword [eax]
lea ecx, [ebp - 0xec]
cdq
push edx
push eax
call fcn.0051d120
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0xa0]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee3c
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x80
push 0
push 0
push 0x80
lea ecx, [ebp - 0x7c]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee58
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x2ec]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee6c
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x88]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60c030
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x100
push 0
push 0
push 0x100
lea ecx, [ebp - 0xb4]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60eec4
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x94]
call fcn.0051dd60
lea ecx, [ebp - 0x70]
call fcn.0051dfa0
cmp esi, 0x18
jne 0x4b96e0
push 1
push 1
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x94]
call fcn.0051de00
mov ecx, eax
call fcn.0051dac0
push 0xc
lea ecx, [ebp - 0x2bc]
call fcn.00401eb0
push 1
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x2bc]
call fcn.0051e110
push 0xc
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0x59
call fcn.00401eb0
lea ecx, [ebp - 0x250]
call fcn.0051e180
push 0
push 0
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x5a
call fcn.0051da50
mov ecx, eax
call fcn.0051da50
lea ecx, [ebp - 0x94]
call fcn.0051da30
test al, al
jne 0x4b96c1
lea ecx, [ebp - 0x2bc]
call fcn.0051da30
test al, al
jne 0x4b96c1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6104d8
lea ecx, [ebp - 0x2bc]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x250]
call fcn.0051dda0
lea ecx, [ebp - 0x250]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00517540
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x610520
lea ecx, [ebp - 0x2bc]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x250]
call fcn.0051dda0
lea ecx, [ebp - 0x250]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00517540
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610580
push 0x6105c8
lea ecx, [ebp - 0x2bc]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x250]
call fcn.0051dda0
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x250]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00517ba0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00517540
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.00515590
test al, al
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
sete al
lea ecx, [ebp - 0x94]
mov byte [ebp - 0x889], al
push 0
push 0x60477c
test al, al
jne 0x4b967b
call fcn.0051dd30
push eax
push 0x610648
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4b96b4
call fcn.0051dd30
push eax
push 0x6106a0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
movzx eax, byte [ebp - 0x889]
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
lea ecx, [ebp - 0x250]
call fcn.0051dfd0
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
cmp esi, 0x1a
jne 0x4ba007
push 0x610704
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4b988d
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4b9734
mov byte [ebp - 0x889], 1
push 1
push 0x610840
lea ecx, [ebp - 0x70]
call fcn.0051de00
jmp 0x4b9fb0
push 0xc
lea ecx, [ebp - 0x25c]
call fcn.00401eb0
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x25c]
call fcn.0051e150
push 0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x5b
call fcn.0051da50
lea ecx, [ebp - 0x25c]
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
cmp eax, 0xffffffff
lea ecx, [ebp - 0xa0]
push 0
push 0x610730
setg byte [ebp - 0x889]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x25c]
call fcn.0051dda0
lea ecx, [ebp - 0x25c]
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610778
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x25c]
call fcn.0051dda0
lea ecx, [ebp - 0x25c]
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610580
push 0x6105c8
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x25c]
call fcn.0051dda0
lea ecx, [ebp - 0x25c]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.00515300
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
cmp byte [ebp - 0x889], 0
jne 0x4b9720
push 1
push 0x6107d8
lea ecx, [ebp - 0x70]
call fcn.0051de00
jmp 0x4b9fb0
push 0x6108b0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4b9abc
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4b98d8
mov byte [ebp - 0x889], 1
push 1
push 0x6109f8
lea ecx, [ebp - 0x70]
call fcn.0051de00
jmp 0x4b9fb0
push 0xc
lea ecx, [ebp - 0x1a4]
call fcn.00401eb0
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x1a4]
call fcn.0051e150
push 0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x5c
call fcn.0051da50
lea ecx, [ebp - 0x1a4]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
cmp eax, 0xffffffff
lea ecx, [ebp - 0xa0]
push 0
push 0x6108e4
setg byte [ebp - 0x889]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1a4]
call fcn.0051dda0
lea ecx, [ebp - 0x1a4]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x61091c
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1a4]
call fcn.0051dda0
lea ecx, [ebp - 0x1a4]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610938
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1a4]
call fcn.0051dda0
lea ecx, [ebp - 0x1a4]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610950
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1a4]
call fcn.0051dda0
lea ecx, [ebp - 0x1a4]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610978
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1a4]
call fcn.0051dda0
lea ecx, [ebp - 0x1a4]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.00515300
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
cmp byte [ebp - 0x889], 0
jne 0x4b98c4
push 1
push 0x610988
lea ecx, [ebp - 0x70]
call fcn.0051de00
jmp 0x4b9fb0
push 0x610a6c
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4b9b4e
lea ecx, [ebp - 0x2ec]
call fcn.0051dd30
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4b9b10
mov byte [ebp - 0x889], 1
push 1
push 0x610b10
lea ecx, [ebp - 0x70]
call fcn.0051de00
jmp 0x4b9fb0
lea ecx, [ebp - 0x2ec]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4b9afc
push 1
push 0x610aa0
lea ecx, [ebp - 0x70]
call fcn.0051de00
jmp 0x4b9fb0
push 0x610b80
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4b9be0
lea ecx, [ebp - 0x2ec]
call fcn.0051dd30
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4b9ba2
mov byte [ebp - 0x889], 1
push 1
push 0x610c30
lea ecx, [ebp - 0x70]
call fcn.0051de00
jmp 0x4b9fb0
lea ecx, [ebp - 0x2ec]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4b9b8e
push 1
push 0x610bb8
lea ecx, [ebp - 0x70]
call fcn.0051de00
jmp 0x4b9fb0
push 0x610cac
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
jne 0x4b9e38
push 0x610cd8
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
jne 0x4b9e38
push 0x610ef8
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4b9fb0
push 4
lea ecx, [ebp - 0x154]
call fcn.00401ed0
lea ecx, [ebp - 0x154]
call fcn.00518880
push 0xc
lea ecx, [ebp - 0x364]
mov byte [ebp - 4], 0x5f
call fcn.00401eb0
push 1
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x364]
call fcn.0051e110
push 0xc
lea ecx, [ebp - 0x358]
mov byte [ebp - 4], 0x60
call fcn.00401eb0
lea ecx, [ebp - 0x358]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x838]
mov byte [ebp - 4], 0x61
call fcn.00401eb0
lea ecx, [ebp - 0x838]
call fcn.005188a0
xor esi, esi
mov byte [ebp - 4], 0x62
push esi
push 1
push 0xd
push 1
push 0x5fe504
lea ecx, [ebp - 0x364]
call fcn.0051c760
cmp eax, 0xa
jge 0x4b9cf9
lea ecx, [ebp - 0x838]
call fcn.00518890
lea ecx, [ebp - 0x358]
call fcn.0051dfd0
lea ecx, [ebp - 0x364]
call fcn.0051dfd0
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x58
call fcn.005187c0
jmp 0x4b9fb0
push 0
push 0x20019
dec eax
lea ecx, [ebp - 0x364]
push eax
call fcn.0051cb00
mov ecx, eax
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x154]
call fcn.00518810
test al, al
je 0x4b9e08
lea eax, [ebp - 0x838]
push eax
push 0
lea ecx, [ebp - 0x154]
call fcn.00518170
test al, al
je 0x4b9e08
mov edi, esi
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610f30
push dword [ebp - 0x838]
lea ecx, [ebp - 0x364]
push 0x5fe504
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x358]
call fcn.0051dda0
lea ecx, [ebp - 0x358]
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610f74
push dword [ebp - 0x838]
lea ecx, [ebp - 0x364]
add esi, eax
push 0x5fe504
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x358]
call fcn.0051dda0
lea ecx, [ebp - 0x358]
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00515300
add esi, eax
lea ecx, [ebp - 0x154]
lea eax, [ebp - 0x838]
inc edi
push eax
push edi
call fcn.00518170
test al, al
jne 0x4b9d46
mov edi, dword [ebp - 0x8a0]
test esi, esi
lea ecx, [ebp - 0x70]
push 1
setg byte [ebp - 0x889]
test esi, esi
jg 0x4b9e29
push 0x610fb0
call fcn.0051de00
jmp 0x4b9cc4
push 0x611020
call fcn.0051de00
jmp 0x4b9cc4
push 0xc
lea ecx, [ebp - 0x518]
call fcn.00401eb0
lea ecx, [ebp - 0x518]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0x5d
call fcn.00401eb0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x610d14
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x524]
call fcn.0051e0c0
push 1
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0x5e
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov esi, dword [0x5de348]
push eax
call esi
test eax, eax
je 0x4b9f4c
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5ff6d4
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
push 0x610d20
lea ecx, [ebp - 0x310]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x518]
call fcn.0051dda0
push 1
push 0
lea ecx, [ebp - 0x518]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.0050ad40
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
call dword [0x5de620]
mov byte [ebp - 0x889], al
test al, al
jne 0x4b9f4c
push 0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x524]
call fcn.0051dd30
push eax
call esi
push 0x610cac
lea ecx, [ebp - 0x94]
call fcn.0051e060
lea ecx, [ebp - 0x70]
push 1
test al, al
je 0x4b9f7c
cmp byte [ebp - 0x889], 0
jne 0x4b9f75
push 0x610d50
jmp 0x4b9f91
push 0x610db0
jmp 0x4b9f91
cmp byte [ebp - 0x889], 0
jne 0x4b9f8c
push 0x610e18
jmp 0x4b9f91
push 0x610e88
call fcn.0051de00
lea ecx, [ebp - 0x524]
call fcn.0051dfd0
lea ecx, [ebp - 0x518]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
cmp byte [ebp - 0x889], 0
je 0x4b9ff1
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
xor eax, eax
cmp byte [ebp - 0x889], al
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
jmp 0x4bf8b7
cmp esi, 0x6f
jne 0x4ba0a6
push 0x605c04
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004c0cc0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4ba07d
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611090
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push dword [ebp - 0x890]
jmp 0x4bf3a1
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6110d0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
cmp esi, 0x70
jne 0x4ba15d
push 0x605c04
push 0x611108
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004c0cc0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4ba12b
call fcn.0051dd30
push eax
push 0x611144
push 0x611150
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
jmp 0x4ba143
call fcn.0051dd30
push eax
push 0x611144
push 0x6111c0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
inc dword [edi + 0x28]
jmp 0x4bf8b7
cmp esi, 0x71
jne 0x4ba260
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x88]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee84
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
test eax, eax
je 0x4ba221
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x6f]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4ba1ea
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x6f]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
je 0x4ba221
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611228
jmp 0x4bc2d1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611280
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
cmp esi, 0x72
jne 0x4ba51e
push 0x6112d0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4ba412
push 4
lea ecx, [ebp - 0x18c]
call fcn.00401ed0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18c]
call fcn.00518860
push 0xc
lea ecx, [ebp - 0x424]
mov byte [ebp - 4], 0x63
call fcn.00401eb0
lea ecx, [ebp - 0x424]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x580]
mov byte [ebp - 4], 0x64
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x580]
call fcn.0051e110
lea eax, [ebp - 0x424]
mov byte [ebp - 4], 0x65
push eax
push 0x5fe50c
lea ecx, [ebp - 0x18c]
call fcn.00518530
mov byte [ebp - 0x889], al
test al, al
je 0x4ba3b8
push 0
push 0
push 0x5fe50c
lea ecx, [ebp - 0x580]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x424]
call fcn.0051c000
push 3
lea ecx, [ebp - 0x424]
call fcn.0051be70
push 0
lea ecx, [ebp - 0x424]
call fcn.0051dd30
push eax
push 1
push 0x5fe50c
lea ecx, [ebp - 0x18c]
call fcn.00517d20
mov byte [ebp - 0x889], al
test al, al
je 0x4ba3b8
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611310
jmp 0x4ba3e0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611388
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x580]
call fcn.0051dfd0
lea ecx, [ebp - 0x424]
call fcn.0051dfd0
lea ecx, [ebp - 0x18c]
mov byte [ebp - 4], 0x58
call fcn.005187c0
jmp 0x4bf397
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0x4c
lea ecx, [ebp - 0x6a0]
call fcn.00401fc0
lea ecx, [ebp - 0x6a0]
call fcn.005114f0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x66
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x6a0]
call fcn.005113b0
mov byte [ebp - 0x889], al
test al, al
je 0x4ba4d9
push 0x5fe50c
lea ecx, [ebp - 0x6a0]
call fcn.005111e0
mov byte [ebp - 0x889], al
test al, al
je 0x4ba4d9
lea ecx, [ebp - 0x6a0]
call fcn.005110d0
mov byte [ebp - 0x889], al
test al, al
je 0x4ba4d9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6113f0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x6a0]
jmp 0x4bf388
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611440
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x6a0]
jmp 0x4bf388
cmp esi, 0x74
jne 0x4ba83a
push 0xc
lea ecx, [ebp - 0x388]
call fcn.00401eb0
lea ecx, [ebp - 0x388]
call fcn.0051e180
lea ecx, [ebp - 0x388]
mov byte [ebp - 4], 0x67
call fcn.0051dd30
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.00515590
test al, al
sete byte [ebp - 0x889]
test al, al
je 0x4ba597
lea ecx, [ebp - 0x388]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
push 0x611484
lea ecx, [ebp - 0x388]
call fcn.0051e060
test al, al
je 0x4ba666
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4ba65a
push 0x6114a8
call fcn.0051dda0
push 0x611524
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov esi, dword [ebp - 0x890]
cmp byte [ebp - 0x889], 0
je 0x4ba631
push esi
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
lea ecx, [ebp - 0x388]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
push 0x611550
call fcn.0051dda0
jmp 0x4ba631
push 0x6115c4
lea ecx, [ebp - 0x388]
call fcn.0051e060
test al, al
je 0x4ba74e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4ba73f
push 0x611608
call fcn.0051dda0
push 0x611690
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x6116c4
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611700
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611740
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611780
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x6117c0
jmp 0x4ba5ea
push 0x611800
call fcn.0051dda0
jmp 0x4ba631
push 0x611880
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4ba5fe
push 0xc
lea ecx, [ebp - 0x530]
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x530]
call fcn.0051e110
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x68
push 0x60ff48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x530]
push 0x60ff50
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4ba81c
push 0x6118b0
call fcn.0051dda0
push 0x611690
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
lea ecx, [ebp - 0x530]
mov byte [ebp - 4], 0x67
call fcn.0051dfd0
jmp 0x4ba604
push 0x611920
call fcn.0051dda0
lea ecx, [ebp - 0x530]
mov byte [ebp - 4], 0x67
call fcn.0051dfd0
jmp 0x4ba604
cmp esi, 0x73
jne 0x4bab7c
push 0x611984
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4ba907
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x71]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4ba8da
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x70]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4ba8da
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611a20
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x6119b8
jmp 0x4be8cd
push 0x611a80
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4ba9cf
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4ba9a2
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4ba9a2
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611b00
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611aa8
jmp 0x4be8cd
push 0x611b50
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4baa97
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4baa6a
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4baa6a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611bf0
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611b88
jmp 0x4be8cd
push 0x611c50
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4be8d5
lea ecx, [ebp - 0xa0]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4bab0f
mov byte [ebp - 0x889], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611c80
jmp 0x4be8cd
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4baae2
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4baae2
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x611cd0
jmp 0x4be8cd
cmp esi, 0x1f
jne 0x4baf6c
lea ecx, [ebp - 0xa0]
call fcn.0051da30
test al, al
jne 0x4bf8b7
push 0xc
lea ecx, [ebp - 0x418]
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x418]
call fcn.0051e110
push 0x611d1c
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x69
call fcn.0051e060
test al, al
jne 0x4bad9d
push 0x611d34
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
jne 0x4bad9d
push 0x611d58
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
jne 0x4bad9d
push 0x611d70
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bac44
push 0x611d98
jmp 0x4bada2
push 0x611df4
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bac62
push 0x611e28
jmp 0x4bada2
push 0x611e74
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bac86
lea ecx, [ebp - 0x110]
call fcn.0051dfa0
jmp 0x4badad
push 0x611eac
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bacf6
push 4
lea ecx, [ebp - 0x198]
call fcn.00401ed0
push 0
push 0x20019
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x198]
call fcn.00518860
lea eax, [ebp - 0x110]
mov byte [ebp - 4], 0x6a
push eax
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x198]
call fcn.00518530
test al, al
jne 0x4bad0a
lea ecx, [ebp - 0x198]
call fcn.005187c0
lea ecx, [ebp - 0x418]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
push 0
push 0
push 0x5fe50c
lea ecx, [ebp - 0x418]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x110]
call fcn.0051c000
push 0
push 0
push 0x604a10
push 0x61024c
lea ecx, [ebp - 0x110]
call fcn.0051c000
lea ecx, [ebp - 0x110]
call fcn.0051df40
dec eax
lea ecx, [ebp - 0x110]
push eax
call fcn.0051dfe0
cmp word [eax], 0xa
jne 0x4bad8c
push 1
lea ecx, [ebp - 0x110]
call fcn.0051cac0
lea ecx, [ebp - 0x110]
call fcn.0051df40
dec eax
lea ecx, [ebp - 0x110]
push eax
call fcn.0051dfe0
cmp word [eax], 0xa
je 0x4bad61
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x69
call fcn.005187c0
jmp 0x4badad
push 0x604f50
lea ecx, [ebp - 0x110]
call fcn.0051e0b0
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
test al, al
jne 0x4bae1d
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x110]
call fcn.0051dd30
push eax
push 0x611ed8
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611ee8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4baf43
lea ecx, [ebp - 0x110]
call fcn.0051df40
test eax, eax
je 0x4baea5
push 0x611eac
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4baea5
push 0
lea ecx, [ebp - 0x110]
call fcn.0051dd30
push eax
push 7
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00517d20
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611f10
lea ecx, [ebp - 0x418]
call fcn.0051dd30
push eax
push 0x611f34
jmp 0x4baf17
lea ecx, [ebp - 0x110]
call fcn.0051df40
test eax, eax
je 0x4baf1f
push 0
lea ecx, [ebp - 0x110]
call fcn.0051dd30
push eax
push 1
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00517d20
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x110]
call fcn.0051dd30
push eax
push 0x611ed8
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611f64
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push esi
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
lea ecx, [ebp - 0x418]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
cmp esi, 0x20
jne 0x4bb157
lea ecx, [ebp - 0xa0]
call fcn.0051da30
test al, al
jne 0x4bf8b7
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
jne 0x4bafde
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611f98
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bb02b
call fcn.0051dd30
push eax
push 0x611144
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x611fe8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612040
lea ecx, [ebp - 0xa0]
call fcn.0051c4c0
push 0
push 0xffffffffffffffff
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00518810
test al, al
je 0x4bf8b7
push 0
push 0x612090
push 1
push 0x60b684
lea ecx, [ebp - 0x20]
call fcn.00517d20
push 0
push 0x6120a0
push 1
push 0x6120e8
lea ecx, [ebp - 0x20]
call fcn.00517d20
push 0
push 0x612100
push 1
push 0x612188
lea ecx, [ebp - 0x20]
call fcn.00517d20
push 0
lea eax, [ebp - 0x4a0]
mov dword [ebp - 0x4a0], 1
push eax
push 4
push 0x6121a0
lea ecx, [ebp - 0x20]
call fcn.00517d20
push 0
push 0x6121d0
push 1
push 0x61234c
lea ecx, [ebp - 0x20]
call fcn.00517d20
push 0
push 0x612370
push 1
push 0x60eea4
lea ecx, [ebp - 0x20]
call fcn.00517d20
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051da50
push 0
push 0x612498
push 1
push 0x6124e8
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00517c20
jmp 0x4bf8b7
cmp esi, 0x21
jne 0x4bb7d0
lea ecx, [ebp - 0xb4]
call fcn.0051da30
test al, al
jne 0x4bf8b7
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b5240
mov ecx, eax
test ecx, ecx
js 0x4bf8b7
mov eax, dword [edi + 0x30]
mov dword [ebp - 0x8b4], eax
cmp ecx, eax
jl 0x4bb1a4
cmp eax, 1
je 0x4bb1ae
mov esi, dword [edi + 0x3c]
jmp 0x4bb1b9
mov dword [ebp - 0x8b4], 1
push ecx
lea ecx, [edi + 0x3c]
call fcn.004038d0
mov esi, eax
push 0xc
lea ecx, [ebp - 0xc8]
call fcn.00401eb0
lea ecx, [ebp - 0xc8]
call fcn.0051e180
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0x8b4]
test eax, eax
jle 0x4bb3d7
mov edi, eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x612508
mov ecx, esi
call fcn.0051dd30
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x612580
mov ecx, esi
call fcn.0051dd30
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6125f8
mov ecx, esi
call fcn.0051dd30
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x612670
mov ecx, esi
call fcn.0051dd30
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6126e0
mov ecx, esi
call fcn.0051dd30
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612778
mov ecx, esi
call fcn.0051dd30
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
add esi, 0xc
sub edi, 1
jne 0x4bb1e5
mov edi, dword [ebp - 0x8a0]
mov eax, dword [ebp - 0x8b4]
cmp eax, dword [edi + 0x30]
jl 0x4bb58a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
mov esi, dword [ebp - 0x8b0]
lea ecx, [ebp - 0xc8]
push eax
push 0x6127d8
push esi
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x612850
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6128c8
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x612940
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6129b0
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612a48
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov eax, dword [ebp - 0x8b4]
cmp byte [ebp - 0x8a5], 0
je 0x4bb744
cmp eax, dword [edi + 0x30]
jl 0x4bb744
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
mov esi, dword [ebp - 0x8c4]
lea ecx, [ebp - 0xc8]
push eax
push 0x6127d8
push esi
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x612850
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6128c8
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x612940
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6129b0
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612a48
push esi
lea ecx, [ebp - 0xc8]
call fcn.0051dda0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xc8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x612aa8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
lea ecx, [ebp - 0xc8]
inc dword [edi + 0x28]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
cmp esi, 0x23
jne 0x4bbad0
push 0x6112d0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bb982
push 4
lea ecx, [ebp - 0x178]
call fcn.00401ed0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x178]
call fcn.00518860
push 0xc
lea ecx, [ebp - 0x3e8]
mov byte [ebp - 4], 0x6c
call fcn.00401eb0
lea ecx, [ebp - 0x3e8]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x5bc]
mov byte [ebp - 4], 0x6d
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x5bc]
call fcn.0051e110
lea eax, [ebp - 0x3e8]
mov byte [ebp - 4], 0x6e
push eax
push 0x5fe50c
lea ecx, [ebp - 0x178]
call fcn.00518530
mov byte [ebp - 0x889], al
test al, al
je 0x4bb928
push 0
push 0
push 0x5fe50c
lea ecx, [ebp - 0x5bc]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x3e8]
call fcn.0051c000
push 3
lea ecx, [ebp - 0x3e8]
call fcn.0051be70
push 0
lea ecx, [ebp - 0x3e8]
call fcn.0051dd30
push eax
push 1
push 0x5fe50c
lea ecx, [ebp - 0x178]
call fcn.00517d20
mov byte [ebp - 0x889], al
test al, al
je 0x4bb928
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x612af0
jmp 0x4bb950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x612b58
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x5bc]
call fcn.0051dfd0
lea ecx, [ebp - 0x3e8]
call fcn.0051dfd0
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x58
call fcn.005187c0
jmp 0x4bf397
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x88]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60c030
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0x4c
lea ecx, [ebp - 0x6f0]
call fcn.00401fc0
lea ecx, [ebp - 0x6f0]
call fcn.005114f0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x6f
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x6f0]
call fcn.005113b0
mov byte [ebp - 0x889], al
test al, al
je 0x4bba8b
push 0x5fe50c
lea ecx, [ebp - 0x6f0]
call fcn.005111e0
mov byte [ebp - 0x889], al
test al, al
je 0x4bba8b
lea ecx, [ebp - 0x6f0]
call fcn.005110d0
mov byte [ebp - 0x889], al
test al, al
je 0x4bba8b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x612bb8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x6f0]
jmp 0x4bf388
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x612bfc
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x6f0]
jmp 0x4bf388
cmp esi, 0x25
jne 0x4bbf13
push 0xc
lea ecx, [ebp - 0x4b8]
call fcn.00401eb0
lea ecx, [ebp - 0x4b8]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x430]
mov byte [ebp - 4], 0x70
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x430]
call fcn.0051e110
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x71
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x4b8]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee6c
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0x4b8]
call fcn.0051df40
test eax, eax
je 0x4bbb99
lea ecx, [ebp - 0x4b8]
call fcn.0051dd30
jmp 0x4bbb9b
xor eax, eax
push eax
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0xc
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x889], al
call fcn.00401eb0
lea ecx, [ebp - 0x148]
call fcn.0051e180
push 0x611d1c
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x72
call fcn.0051e060
test al, al
je 0x4bbce9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x430]
push 0x60ff50
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bbcdf
push 0x612c38
call fcn.0051dda0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612c90
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x148]
call fcn.0051dda0
push 0
push 0x20019
lea ecx, [ebp - 0x148]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00518810
test al, al
je 0x4bbc90
lea ecx, [ebp - 0x20]
call fcn.00518010
test eax, eax
jne 0x4bbea4
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x148]
call fcn.0051e080
push 0
lea ecx, [ebp - 0x148]
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612cbc
lea ecx, [ebp - 0x148]
call fcn.0051c4c0
push 0x612cdc
jmp 0x4bbe90
push 0x612cf0
jmp 0x4bbecf
push 0x612d40
lea ecx, [ebp - 0x94]
call fcn.0051e060
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bbdd6
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x430]
push 0x60ff50
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bbcdf
push 0x612c38
call fcn.0051dda0
lea ecx, [ebp - 0x20]
call fcn.00518010
test eax, eax
jne 0x4bbea4
push 1
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x148]
call fcn.0051de00
push 0
lea ecx, [ebp - 0x148]
call fcn.0051da50
lea ecx, [ebp - 0x148]
call fcn.0051dd30
mov edx, 0x611d1c
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4bbea4
push 0
lea ecx, [ebp - 0x148]
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612cbc
lea ecx, [ebp - 0x148]
call fcn.0051c4c0
push 0x612cdc
jmp 0x4bbe90
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x94]
push 0x60ff50
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bbeca
push 0x612d68
call fcn.0051dda0
push 1
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x148]
call fcn.0051de00
push 0
lea ecx, [ebp - 0x148]
call fcn.0051da50
push 0
push 0x20019
lea ecx, [ebp - 0x148]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00518810
test al, al
je 0x4bbe58
lea ecx, [ebp - 0x20]
call fcn.00518070
test eax, eax
jne 0x4bbea4
push 0
lea ecx, [ebp - 0x148]
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612da8
lea ecx, [ebp - 0x148]
call fcn.0051c4c0
push 0x612de0
lea ecx, [ebp - 0x148]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push esi
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
jmp 0x4bbed4
push 0x612e1c
call fcn.0051dda0
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
lea ecx, [ebp - 0x148]
call fcn.0051dfd0
lea ecx, [ebp - 0x430]
call fcn.0051dfd0
lea ecx, [ebp - 0x4b8]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
cmp esi, 0x24
jne 0x4bc2f1
push 0x612e54
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bbff1
lea ecx, [ebp - 0xa0]
call fcn.0051da30
test al, al
jne 0x4bf8b7
push 0x612e6c
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x612e84
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x889], al
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
add byte [ebp - 0x889], al
lea ecx, [ebp - 0xa0]
push 0x612e9c
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
add al, byte [ebp - 0x889]
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
setne byte [ebp - 0x889]
push 0
push 0x60ff48
test al, al
je 0x4bbfdc
call fcn.0051dd30
push eax
push 0x611144
push 0x612eb8
jmp 0x4bc2d1
call fcn.0051dd30
push eax
push 0x611144
push 0x612f00
jmp 0x4bc2d1
push 0x612f40
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bc0b8
lea ecx, [ebp - 0xa0]
call fcn.0051da30
test al, al
jne 0x4bf8b7
push 0x60fb20
lea ecx, [ebp - 0x7c]
call fcn.0051e060
lea ecx, [ebp - 0xa0]
test al, al
je 0x4bc051
push 0
push 0x612f58
push 1
push 0x612f74
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.00517c20
jmp 0x4bc064
push 0x612f74
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bc09b
call fcn.0051dd30
push eax
push 0x611144
push 0x612f80
jmp 0x4bc2d1
call fcn.0051dd30
push eax
push 0x611144
push 0x612fc8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
push 0x613008
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bc1f0
lea ecx, [ebp - 0xa0]
call fcn.0051da30
test al, al
jne 0x4bf8b7
push 0xc
lea ecx, [ebp - 0x448]
call fcn.00401eb0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x612cbc
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x448]
call fcn.0051e0c0
push 0x612cdc
lea ecx, [ebp - 0x448]
mov byte [ebp - 4], 0x73
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x61304c
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x889], al
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x448]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x448]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
add al, byte [ebp - 0x889]
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
setne byte [ebp - 0x889]
push 0
push 0x60ff48
test al, al
je 0x4bc1c4
call fcn.0051dd30
push eax
push 0x611144
push 0x613058
jmp 0x4bc1d4
call fcn.0051dd30
push eax
push 0x611144
push 0x613098
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x448]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bc2d9
push 0x6130d4
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bf8b7
lea ecx, [ebp - 0xa0]
call fcn.0051da30
test al, al
jne 0x4bf8b7
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test eax, eax
lea ecx, [ebp - 0xa0]
push 0x613104
push 0
setg byte [ebp - 0x889]
call fcn.0051da50
mov ecx, eax
call fcn.0051c4c0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00515300
push 0
push 0
push 0
push 0
test eax, eax
lea ecx, [ebp - 0x7c]
push 0
setg al
add al, byte [ebp - 0x889]
push 0
push 0
setne byte [ebp - 0x889]
push 0
push 0x60ff48
test al, al
je 0x4bc2c1
call fcn.0051dd30
push eax
push 0x611144
push 0x613128
jmp 0x4bc2d1
call fcn.0051dd30
push eax
push 0x611144
push 0x613178
lea ecx, [ebp - 0x70]
call fcn.0051dda0
cmp byte [ebp - 0x889], 0
je 0x4bf3c4
push dword [ebp - 0x890]
jmp 0x4bf3a1
cmp esi, 0x2a
jne 0x4bc390
push 0x605c04
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004c0cc0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bc367
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6131bc
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push dword [ebp - 0x890]
jmp 0x4bf3a1
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6131fc
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
cmp esi, 0x2b
jne 0x4bc40e
push 0x605c04
push 0x611108
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004c0cc0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bc3f1
call fcn.0051dd30
push eax
push 0x611144
push 0x613230
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push dword [ebp - 0x890]
jmp 0x4bf3a1
call fcn.0051dd30
push eax
push 0x611144
push 0x6132a0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
cmp esi, 0x2c
jne 0x4bc511
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x88]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee84
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
test eax, eax
je 0x4bc4d2
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x2a]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bc49b
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x2a]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
je 0x4bc4d2
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x613300
jmp 0x4bc2d1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x613358
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
cmp esi, 0x2d
jne 0x4bc7cf
push 0x6112d0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bc6c3
push 4
lea ecx, [ebp - 0x17c]
call fcn.00401ed0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x17c]
call fcn.00518860
push 0xc
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0x74
call fcn.00401eb0
lea ecx, [ebp - 0x43c]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x5b0]
mov byte [ebp - 4], 0x75
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x5b0]
call fcn.0051e110
lea eax, [ebp - 0x43c]
mov byte [ebp - 4], 0x76
push eax
push 0x5fe50c
lea ecx, [ebp - 0x17c]
call fcn.00518530
mov byte [ebp - 0x889], al
test al, al
je 0x4bc669
push 0
push 0
push 0x5fe50c
lea ecx, [ebp - 0x5b0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x43c]
call fcn.0051c000
push 3
lea ecx, [ebp - 0x43c]
call fcn.0051be70
push 0
lea ecx, [ebp - 0x43c]
call fcn.0051dd30
push eax
push 1
push 0x5fe50c
lea ecx, [ebp - 0x17c]
call fcn.00517d20
mov byte [ebp - 0x889], al
test al, al
je 0x4bc669
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x6133a8
jmp 0x4bc691
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x613418
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x5b0]
call fcn.0051dfd0
lea ecx, [ebp - 0x43c]
call fcn.0051dfd0
lea ecx, [ebp - 0x17c]
mov byte [ebp - 4], 0x58
call fcn.005187c0
jmp 0x4bf397
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0x4c
lea ecx, [ebp - 0x740]
call fcn.00401fc0
lea ecx, [ebp - 0x740]
call fcn.005114f0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x77
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x740]
call fcn.005113b0
mov byte [ebp - 0x889], al
test al, al
je 0x4bc78a
push 0x5fe50c
lea ecx, [ebp - 0x740]
call fcn.005111e0
mov byte [ebp - 0x889], al
test al, al
je 0x4bc78a
lea ecx, [ebp - 0x740]
call fcn.005110d0
mov byte [ebp - 0x889], al
test al, al
je 0x4bc78a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x613480
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x740]
jmp 0x4bf388
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6134d0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x740]
jmp 0x4bf388
cmp esi, 0x2f
jne 0x4bcb31
push 0xc
lea ecx, [ebp - 0x370]
call fcn.00401eb0
lea ecx, [ebp - 0x370]
call fcn.0051e180
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x78
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x370]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee6c
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0x370]
call fcn.0051dd30
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.00515590
test al, al
sete byte [ebp - 0x889]
test al, al
je 0x4bc88a
lea ecx, [ebp - 0x370]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
push 0x611484
lea ecx, [ebp - 0x370]
call fcn.0051e060
test al, al
je 0x4bc95d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bc951
push 0x613518
call fcn.0051dda0
push 0x611524
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov esi, dword [ebp - 0x890]
cmp byte [ebp - 0x889], 0
je 0x4bc928
push esi
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
lea ecx, [ebp - 0x370]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
push 0x613590
call fcn.0051dda0
jmp 0x4bc928
push 0x6115c4
lea ecx, [ebp - 0x370]
call fcn.0051e060
test al, al
je 0x4bca45
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bca36
push 0x613600
call fcn.0051dda0
push 0x611690
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x6116c4
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611700
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611740
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611780
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x6117c0
jmp 0x4bc8e1
push 0x613688
call fcn.0051dda0
jmp 0x4bc928
push 0x611880
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bc8f5
push 0xc
lea ecx, [ebp - 0x53c]
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x53c]
call fcn.0051e110
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x79
push 0x60ff48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x53c]
push 0x60ff50
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bcb13
push 0x613708
call fcn.0051dda0
push 0x611690
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
lea ecx, [ebp - 0x53c]
mov byte [ebp - 4], 0x78
call fcn.0051dfd0
jmp 0x4bc8fb
push 0x613778
call fcn.0051dda0
lea ecx, [ebp - 0x53c]
mov byte [ebp - 4], 0x78
call fcn.0051dfd0
jmp 0x4bc8fb
cmp esi, 0x2e
jne 0x4bce73
push 0x611984
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bcbfe
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x2c]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bcbd1
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x2b]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bcbd1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x613848
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x6137e0
jmp 0x4be8cd
push 0x611a80
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bccc6
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bcc99
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bcc99
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x613900
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x6138a8
jmp 0x4be8cd
push 0x611b50
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bcd8e
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bcd61
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bcd61
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x6139b8
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x613950
jmp 0x4be8cd
push 0x613a18
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4be8d5
lea ecx, [ebp - 0xa0]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4bce06
mov byte [ebp - 0x889], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x613a48
jmp 0x4be8cd
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bcdd9
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bcdd9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x613a98
jmp 0x4be8cd
cmp esi, 0x33
jne 0x4bcf62
push 0x613ae0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bcef5
push 0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 0x613b04
mov ecx, eax
call fcn.004c77a0
mov byte [ebp - 0x889], al
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bcedd
call fcn.0051dd30
push eax
push 0x611144
push 0x613b38
jmp 0x4bceed
call fcn.0051dd30
push eax
push 0x611144
push 0x613b88
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
mov al, byte [ebp - 0x889]
cmp al, 1
jne 0x4bcf47
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x889], al
jmp 0x4bf8b1
cmp al, 2
jne 0x4bcf52
or dword [ebp - 0x8a4], 2
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x889], al
jmp 0x4bf8b1
cmp esi, 0x34
jne 0x4bd10c
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0x613be0
lea ecx, [ebp - 0x94]
call fcn.0051e060
lea ecx, [ebp - 0x88]
test al, al
je 0x4bd062
push 0
call fcn.0051dd30
mov edx, 0x613c20
mov ecx, eax
call fcn.004c77a0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x889], al
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x613c64
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
push 0x6056b4
push 0x613c90
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004c0cc0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bd041
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x613ca8
jmp 0x4bceed
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x613d18
jmp 0x4bceed
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bd0d5
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bd0d5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x613de0
jmp 0x4bceed
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x613d80
jmp 0x4bceed
cmp esi, 0x35
jne 0x4bd56f
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x32]
mov ecx, eax
call fcn.0050cda0
xorps xmm0, xmm0
mov byte [ebp - 0x891], al
push 0xc
lea ecx, [ebp - 0x2d4]
mov dword [ebp - 0x83c], 0
movups xmmword [ebp - 0x84c], xmm0
call fcn.00401eb0
lea ecx, [ebp - 0x2d4]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x500]
mov byte [ebp - 4], 0x7a
call fcn.00401eb0
lea ecx, [ebp - 0x500]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 4], 0x7b
call fcn.00401eb0
lea ecx, [ebp - 0x1e8]
call fcn.0051e180
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x7c
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x1e8]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60eed0
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [edi + 0x53c]
call fcn.00519ea0
push 0
push 1
lea ecx, [ebp - 0x1e8]
call fcn.0051dd30
push eax
lea ecx, [edi + 0x53c]
call fcn.00519ad0
push 0
push 0
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 0x889], al
call fcn.0051dd30
lea edx, [esi - 0x34]
mov ecx, eax
call fcn.00519350
push 0x100
lea ecx, [ebp - 0x1e8]
lea esi, [edi + 0x540]
call fcn.0051dd30
push eax
mov ecx, esi
call fcn.004ed860
push 0
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
push 0x613e38
call fcn.004ed270
test al, al
je 0x4bd336
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
lea eax, [ebp - 0x84c]
push eax
call fcn.004ec790
test al, al
je 0x4bd336
nop dword [eax + eax]
lea eax, [ebp - 0x2d4]
mov ecx, esi
push eax
push 0x613e48
lea eax, [ebp - 0x84c]
push eax
call fcn.004ecff0
test eax, eax
jne 0x4bd2cc
lea eax, [ebp - 0x2d4]
mov ecx, esi
push eax
push 0x613e60
lea eax, [ebp - 0x84c]
push eax
call fcn.004ecff0
test eax, eax
je 0x4bd319
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x2d4]
call fcn.0051dff0
test al, al
jne 0x4bd319
lea eax, [ebp - 0x500]
mov ecx, esi
push eax
push 0x613e6c
lea eax, [ebp - 0x84c]
push eax
call fcn.004ecff0
lea eax, [ebp - 0x84c]
mov ecx, esi
push eax
call fcn.004ec560
test al, al
je 0x4bd319
push 0
push 2
mov ecx, esi
call fcn.004ed770
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
lea eax, [ebp - 0x84c]
push eax
call fcn.004ec790
test al, al
jne 0x4bd290
cmp byte [ebp - 0x889], 0
je 0x4bd360
push dword [edi + 0x564]
lea ecx, [ebp - 0x1e8]
push 0
push 1
call fcn.0051dd30
push eax
lea ecx, [edi + 0x53c]
call fcn.005195f0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x613e74
push 0
lea ecx, [ebp - 0x1e8]
call fcn.0051da50
mov ecx, eax
call fcn.0051c4c0
lea ecx, [edi + 0x53c]
call fcn.00519ea0
push 0
push 1
lea ecx, [ebp - 0x1e8]
call fcn.0051dd30
push eax
lea ecx, [edi + 0x53c]
call fcn.00519ad0
push 0
push 0
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 0x889], al
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00519350
push 0x100
lea ecx, [ebp - 0x1e8]
call fcn.0051dd30
push eax
mov ecx, esi
call fcn.004ed860
push 0
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
push 0x613e38
call fcn.004ed270
test al, al
je 0x4bd48e
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
lea eax, [ebp - 0x84c]
push eax
call fcn.004ec790
test al, al
je 0x4bd48e
lea eax, [ebp - 0x2d4]
mov ecx, esi
push eax
push 0x613e6c
lea eax, [ebp - 0x84c]
push eax
call fcn.004ecff0
test eax, eax
je 0x4bd475
lea eax, [ebp - 0x500]
push eax
lea ecx, [ebp - 0x2d4]
call fcn.0051dff0
test al, al
jne 0x4bd475
lea eax, [ebp - 0x84c]
mov ecx, esi
push eax
call fcn.004ec560
test al, al
je 0x4bd475
push 0
push 2
mov ecx, esi
call fcn.004ed770
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
lea eax, [ebp - 0x84c]
push eax
call fcn.004ec790
test al, al
jne 0x4bd424
cmp byte [ebp - 0x889], 0
je 0x4bd4b8
push dword [edi + 0x564]
lea ecx, [ebp - 0x1e8]
push 0
push 1
call fcn.0051dd30
push eax
lea ecx, [edi + 0x53c]
call fcn.005195f0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x94]
push 0x60ff50
call fcn.0051dd30
cmp byte [ebp - 0x891], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bd526
push 0x613e90
call fcn.0051dda0
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
jmp 0x4bd530
push 0x613ee8
call fcn.0051dda0
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
lea ecx, [ebp - 0x1e8]
call fcn.0051dfd0
lea ecx, [ebp - 0x500]
call fcn.0051dfd0
lea ecx, [ebp - 0x2d4]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
cmp esi, 0x37
jne 0x4bd811
push 0x6112d0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bd705
push 4
lea ecx, [ebp - 0x180]
call fcn.00401ed0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x180]
call fcn.00518860
push 0xc
lea ecx, [ebp - 0x3d0]
mov byte [ebp - 4], 0x7d
call fcn.00401eb0
lea ecx, [ebp - 0x3d0]
call fcn.0051e180
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
mov byte [ebp - 4], 0x7e
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x110]
call fcn.0051de00
lea eax, [ebp - 0x3d0]
push eax
push 0x5fe50c
lea ecx, [ebp - 0x180]
call fcn.00518530
mov byte [ebp - 0x889], al
test al, al
je 0x4bd6b6
push 0
push 0
push 0x5fe50c
lea ecx, [ebp - 0x110]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x3d0]
call fcn.0051c000
push 3
lea ecx, [ebp - 0x3d0]
call fcn.0051be70
push 0
lea ecx, [ebp - 0x3d0]
call fcn.0051dd30
push eax
push 1
push 0x5fe50c
lea ecx, [ebp - 0x180]
call fcn.00517d20
mov byte [ebp - 0x889], al
test al, al
je 0x4bd6b6
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x613f38
jmp 0x4bd6de
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x613fb0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x3d0]
call fcn.0051dfd0
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x58
call fcn.005187c0
jmp 0x4bf397
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0x4c
lea ecx, [ebp - 0x790]
call fcn.00401fc0
lea ecx, [ebp - 0x790]
call fcn.005114f0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x7f
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x790]
call fcn.005113b0
mov byte [ebp - 0x889], al
test al, al
je 0x4bd7cc
push 0x5fe50c
lea ecx, [ebp - 0x790]
call fcn.005111e0
mov byte [ebp - 0x889], al
test al, al
je 0x4bd7cc
lea ecx, [ebp - 0x790]
call fcn.005110d0
mov byte [ebp - 0x889], al
test al, al
je 0x4bd7cc
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614018
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x790]
jmp 0x4bf388
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614068
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x790]
jmp 0x4bf388
cmp esi, 0x38
jne 0x4bdcdb
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0x6140b0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bd982
push 0xc
lea ecx, [ebp - 0x5fc]
call fcn.00401eb0
lea ecx, [ebp - 0x5fc]
call fcn.0051e180
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x80
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x6140f8
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.0050cda0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x891], al
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614114
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.0050cda0
movzx ecx, byte [ebp - 0x891]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x89c], eax
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x613c64
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.0050cda0
mov edx, dword [ebp - 0x89c]
movzx ecx, dl
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x5fc]
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x8ac], eax
call fcn.0051dfd0
mov ecx, dword [ebp - 0x8ac]
jmp 0x4bdc1e
push 0x614134
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bdad4
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
push 0xc
lea ecx, [ebp - 0x2a4]
mov byte [ebp - 0x8ac], al
call fcn.00401eb0
lea ecx, [ebp - 0x2a4]
call fcn.0051e180
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x81
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b5240
test eax, eax
js 0x4bda3a
cmp eax, dword [edi + 0x30]
jge 0x4bda3a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614160
push eax
lea ecx, [edi + 0x3c]
call fcn.004038d0
mov ecx, eax
call fcn.0051dd30
push eax
push str.HKU_
lea ecx, [ebp - 0x2a4]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x2a4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614194
push dword [ebp - 0x8c4]
lea ecx, [ebp - 0x2a4]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x2a4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614194
push dword [ebp - 0x8b0]
lea ecx, [ebp - 0x2a4]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x2a4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.005173d0
lea ecx, [ebp - 0x2a4]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
mov ecx, dword [ebp - 0x8ac]
jmp 0x4bdc1e
push 0x6141c8
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bdbe7
push 0
lea ecx, [ebp - 0x88]
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x6141fc
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614214
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x891], al
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
movzx ecx, byte [ebp - 0x891]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x89c], eax
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614220
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov edx, dword [ebp - 0x89c]
movzx ecx, dl
movzx eax, al
imul ecx, eax
jmp 0x4bdc18
push 0x614244
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov cl, al
mov dword [ebp - 0x8ac], ecx
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test cl, cl
lea ecx, [ebp - 0x7c]
push 0x60ff48
je 0x4bdc56
call fcn.0051dd30
push eax
push 0x611144
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614274
jmp 0x4bdc72
call fcn.0051dd30
push eax
push 0x611144
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614294
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
cmp byte [ebp - 0x8ac], 0
je 0x4bdccb
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
test byte [ebp - 0x8ac], 2
je 0x4bdccb
or dword [ebp - 0x8a4], 2
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8ac], al
jmp 0x4bf8b1
cmp esi, 0x3e
jne 0x4bdd7a
push 0x605c04
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004c0cc0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bdd51
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6142ac
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push dword [ebp - 0x890]
jmp 0x4bf3a1
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6142d8
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
cmp esi, 0x3f
jne 0x4bde1a
push 0x605c04
push 0x611108
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004c0cc0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bddec
call fcn.0051dd30
push eax
push 0x611144
push 0x6142fc
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614334
lea ecx, [ebp - 0x70]
call fcn.0051dda0
push dword [ebp - 0x890]
jmp 0x4bf3a1
call fcn.0051dd30
push eax
push 0x611144
push 0x6142fc
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614360
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
cmp esi, 0x40
jne 0x4bdf3b
lea ecx, [ebp - 0xe0]
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x88]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee84
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
test eax, eax
je 0x4bdeef
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x3e]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bdeab
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x3e]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
je 0x4bdeef
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614380
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6143a0
jmp 0x4bc2d1
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614380
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6143d0
lea ecx, [ebp - 0x70]
call fcn.0051dda0
jmp 0x4bf3c4
cmp esi, 0x41
jne 0x4be231
push 0x6112d0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4be107
push 4
lea ecx, [ebp - 0x184]
call fcn.00401ed0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x184]
call fcn.00518860
push 0xc
lea ecx, [ebp - 0x3dc]
mov byte [ebp - 4], 0x82
call fcn.00401eb0
lea ecx, [ebp - 0x3dc]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x5a4]
mov byte [ebp - 4], 0x83
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x5a4]
call fcn.0051e110
lea eax, [ebp - 0x3dc]
mov byte [ebp - 4], 0x84
push eax
push 0x5fe50c
lea ecx, [ebp - 0x184]
call fcn.00518530
mov byte [ebp - 0x889], al
test al, al
je 0x4be0a0
push 0
push 0
push 0x5fe50c
lea ecx, [ebp - 0x5a4]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x3dc]
call fcn.0051c000
push 3
lea ecx, [ebp - 0x3dc]
call fcn.0051be70
push 0
lea ecx, [ebp - 0x3dc]
call fcn.0051dd30
push eax
push 1
push 0x5fe50c
lea ecx, [ebp - 0x184]
call fcn.00517d20
mov byte [ebp - 0x889], al
test al, al
je 0x4be0a0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x6143f8
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614334
jmp 0x4be0d5
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x614438
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614360
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x5a4]
call fcn.0051dfd0
lea ecx, [ebp - 0x3dc]
call fcn.0051dfd0
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0x58
call fcn.005187c0
jmp 0x4bf397
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0x4c
lea ecx, [ebp - 0x7e0]
call fcn.00401fc0
lea ecx, [ebp - 0x7e0]
call fcn.005114f0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x85
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x7e0]
call fcn.005113b0
mov byte [ebp - 0x889], al
test al, al
je 0x4be1df
push 0x5fe50c
lea ecx, [ebp - 0x7e0]
call fcn.005111e0
mov byte [ebp - 0x889], al
test al, al
je 0x4be1df
lea ecx, [ebp - 0x7e0]
call fcn.005110d0
mov byte [ebp - 0x889], al
test al, al
je 0x4be1df
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614474
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614334
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x7e0]
jmp 0x4bf388
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614474
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614360
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x7e0]
jmp 0x4bf388
cmp esi, 0x43
jne 0x4be5a7
push 0xc
lea ecx, [ebp - 0x2e0]
call fcn.00401eb0
lea ecx, [ebp - 0x2e0]
call fcn.0051e180
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x86
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x2e0]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60ee6c
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [ebp - 0x2e0]
call fcn.0051dd30
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.0051dd30
mov edx, esi
mov ecx, eax
call fcn.00515590
test al, al
sete byte [ebp - 0x889]
test al, al
je 0x4be2ec
lea ecx, [ebp - 0x2e0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
push 0x611484
lea ecx, [ebp - 0x2e0]
call fcn.0051e060
test al, al
je 0x4be3cc
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xb4]
push 0x614490
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4be3c0
push 0x6143a0
call fcn.0051dda0
push 0x611524
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov esi, dword [ebp - 0x890]
cmp byte [ebp - 0x889], 0
je 0x4be397
push esi
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
lea ecx, [ebp - 0x2e0]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
push 0x6143d0
call fcn.0051dda0
jmp 0x4be397
push 0x6115c4
lea ecx, [ebp - 0x2e0]
call fcn.0051e060
test al, al
je 0x4be4ae
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xb4]
push 0x6144d0
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4be3c0
push 0x6143a0
call fcn.0051dda0
push 0x611690
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x6116c4
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611700
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611740
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x611780
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
push 0x6117c0
jmp 0x4be350
push 0x611880
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4be364
push 0xc
lea ecx, [ebp - 0x548]
call fcn.00401eb0
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x548]
call fcn.0051e110
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x87
push 0x60ff48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x548]
push 0x60ff50
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xb4]
push 0x614520
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4be589
push 0x6143a0
call fcn.0051dda0
push 0x611690
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
lea ecx, [ebp - 0x548]
mov byte [ebp - 4], 0x86
call fcn.0051dfd0
jmp 0x4be36a
push 0x6143d0
call fcn.0051dda0
lea ecx, [ebp - 0x548]
mov byte [ebp - 4], 0x86
call fcn.0051dfd0
jmp 0x4be36a
cmp esi, 0x42
jne 0x4be9c7
push 0
push 8
push 0x614554
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
test al, al
je 0x4be68c
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x40]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4be655
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x3f]
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4be655
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x614590
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6145f4
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x614590
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6145c8
jmp 0x4be8cd
push 0
push 8
push 0x614618
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
test al, al
je 0x4be76c
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4be735
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4be735
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x614658
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6145f4
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x614658
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6145c8
jmp 0x4be8cd
push 0
push 8
push 0x614690
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
test al, al
je 0x4be84c
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4be815
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4be815
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x6146c0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6145f4
jmp 0x4be8cd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x6146c0
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6145c8
jmp 0x4be8cd
push 0
push 8
push 0x6146e8
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
test al, al
je 0x4be8d5
lea ecx, [ebp - 0xa0]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4be948
mov byte [ebp - 0x889], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614274
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
mov cl, byte [ebp - 0x889]
test cl, cl
je 0x4be91d
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
mov cl, byte [ebp - 0x889]
inc dword [edi + 0x28]
xor eax, eax
test cl, cl
setne al
add dword [edi + 0x2c], eax
mov eax, dword [ebp - 0x8a4]
or eax, 2
cmp cl, 2
cmovne eax, dword [ebp - 0x8a4]
mov dword [ebp - 0x8a4], eax
jmp 0x4bf8b7
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4be89b
push 0
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov byte [ebp - 0x889], al
test al, al
jne 0x4be89b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614294
jmp 0x4be8cd
cmp esi, 0x47
jne 0x4bea6f
push 0
push 8
push 0x614710
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
test al, al
je 0x4bcef5
push 0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 0x613b04
mov ecx, eax
call fcn.004c77a0
mov byte [ebp - 0x889], al
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4bea49
call fcn.0051dd30
push eax
push 0x611144
push 0x61473c
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6145c8
jmp 0x4bceed
call fcn.0051dd30
push eax
push 0x611144
push 0x614754
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6145f4
jmp 0x4bceed
cmp esi, 0x48
jne 0x4bec55
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0
push 8
push 0x61477c
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
lea ecx, [ebp - 0x88]
test al, al
je 0x4beb91
push 0
call fcn.0051dd30
mov edx, 0x613c20
mov ecx, eax
call fcn.004c77a0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x889], al
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x613c64
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
push 0x6056b4
push 0x613c90
lea ecx, [ebp - 0x88]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004c0cc0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
test al, al
je 0x4beb5f
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6147b4
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6143a0
jmp 0x4bceed
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6147b4
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6143d0
jmp 0x4bceed
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bec11
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov byte [ebp - 0x889], al
test al, al
jne 0x4bec11
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6147ec
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6143d0
jmp 0x4bceed
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x6147ec
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x6143a0
jmp 0x4bceed
cmp esi, 0x49
jne 0x4bf0c8
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x46]
mov ecx, eax
call fcn.0050cda0
xorps xmm0, xmm0
mov byte [ebp - 0x889], al
push 0xc
lea ecx, [ebp - 0x2c8]
mov dword [ebp - 0x850], 0
movups xmmword [ebp - 0x860], xmm0
call fcn.00401eb0
lea ecx, [ebp - 0x2c8]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x554]
mov byte [ebp - 4], 0x88
call fcn.00401eb0
lea ecx, [ebp - 0x554]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x89
call fcn.00401eb0
lea ecx, [ebp - 0x1f4]
call fcn.0051e180
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x8a
call fcn.0051dd30
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x1f4]
call fcn.0051d530
push eax
push 0x5fe50c
push 0x60eed0
lea ecx, [ebp - 0xec]
call fcn.0051dd30
push eax
call dword [0x5de440]
lea ecx, [edi + 0x53c]
call fcn.00519ea0
push 0
push 1
lea ecx, [ebp - 0x1f4]
call fcn.0051dd30
push eax
lea ecx, [edi + 0x53c]
call fcn.00519ad0
push 0
push 0
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 0x891], al
call fcn.0051dd30
lea edx, [esi - 0x48]
mov ecx, eax
call fcn.00519350
push 0x100
lea ecx, [ebp - 0x1f4]
lea esi, [edi + 0x540]
call fcn.0051dd30
push eax
mov ecx, esi
call fcn.004ed860
push 0
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
push 0x613e38
call fcn.004ed270
test al, al
je 0x4bee7a
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
lea eax, [ebp - 0x860]
push eax
call fcn.004ec790
test al, al
je 0x4bee7a
lea eax, [ebp - 0x2c8]
mov ecx, esi
push eax
push 0x613e48
lea eax, [ebp - 0x860]
push eax
call fcn.004ecff0
test eax, eax
jne 0x4bee10
lea eax, [ebp - 0x2c8]
mov ecx, esi
push eax
push 0x613e60
lea eax, [ebp - 0x860]
push eax
call fcn.004ecff0
test eax, eax
je 0x4bee5d
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.0051dff0
test al, al
jne 0x4bee5d
lea eax, [ebp - 0x554]
mov ecx, esi
push eax
push 0x613e6c
lea eax, [ebp - 0x860]
push eax
call fcn.004ecff0
lea eax, [ebp - 0x860]
mov ecx, esi
push eax
call fcn.004ec560
test al, al
je 0x4bee5d
push 0
push 2
mov ecx, esi
call fcn.004ed770
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
lea eax, [ebp - 0x860]
push eax
call fcn.004ec790
test al, al
jne 0x4bedd4
cmp byte [ebp - 0x891], 0
je 0x4beea4
push dword [edi + 0x564]
lea ecx, [ebp - 0x1f4]
push 0
push 1
call fcn.0051dd30
push eax
lea ecx, [edi + 0x53c]
call fcn.005195f0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x613e74
push 0
lea ecx, [ebp - 0x1f4]
call fcn.0051da50
mov ecx, eax
call fcn.0051c4c0
lea ecx, [edi + 0x53c]
call fcn.00519ea0
push 0
push 1
lea ecx, [ebp - 0x1f4]
call fcn.0051dd30
push eax
lea ecx, [edi + 0x53c]
call fcn.00519ad0
push 0
push 0
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 0x891], al
call fcn.0051dd30
mov edx, 1
mov ecx, eax
call fcn.00519350
push 0x100
lea ecx, [ebp - 0x1f4]
call fcn.0051dd30
push eax
mov ecx, esi
call fcn.004ed860
push 0
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
push 0x613e38
call fcn.004ed270
test al, al
je 0x4befda
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
lea eax, [ebp - 0x860]
push eax
call fcn.004ec790
test al, al
je 0x4befda
nop dword [eax + eax]
lea eax, [ebp - 0x2c8]
mov ecx, esi
push eax
push 0x613e6c
lea eax, [ebp - 0x860]
push eax
call fcn.004ecff0
test eax, eax
je 0x4befc1
lea eax, [ebp - 0x554]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.0051dff0
test al, al
jne 0x4befc1
lea eax, [ebp - 0x860]
mov ecx, esi
push eax
call fcn.004ec560
test al, al
je 0x4befc1
push 0
push 2
mov ecx, esi
call fcn.004ed770
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
lea eax, [ebp - 0x860]
push eax
call fcn.004ec790
test al, al
jne 0x4bef70
cmp byte [ebp - 0x891], 0
je 0x4bf004
push dword [edi + 0x564]
lea ecx, [ebp - 0x1f4]
push 0
push 1
call fcn.0051dd30
push eax
lea ecx, [edi + 0x53c]
call fcn.005195f0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x60ff48
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x94]
push 0x60ff50
call fcn.0051dd30
push eax
lea ecx, [ebp - 0xb4]
push 0x614814
call fcn.0051dd30
cmp byte [ebp - 0x889], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bf07f
push 0x614830
call fcn.0051dda0
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
jmp 0x4bf089
push 0x614860
call fcn.0051dda0
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
lea ecx, [ebp - 0x1f4]
call fcn.0051dfd0
lea ecx, [ebp - 0x554]
call fcn.0051dfd0
lea ecx, [ebp - 0x2c8]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
jmp 0x4bf8b7
cmp esi, 0x4b
jne 0x4bf3de
push 0x6112d0
lea ecx, [ebp - 0x94]
call fcn.0051e060
test al, al
je 0x4bf278
push 4
lea ecx, [ebp - 0x188]
call fcn.00401ed0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x188]
call fcn.00518860
push 0xc
lea ecx, [ebp - 0x3f4]
mov byte [ebp - 4], 0x8b
call fcn.00401eb0
lea ecx, [ebp - 0x3f4]
call fcn.0051e180
mov esi, dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
push esi
mov byte [ebp - 4], 0x8c
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0x110]
call fcn.0051de00
lea eax, [ebp - 0x3f4]
push eax
push 0x5fe50c
lea ecx, [ebp - 0x188]
call fcn.00518530
mov byte [ebp - 0x889], al
test al, al
je 0x4bf21c
push 0
push 0
push 0x5fe50c
lea ecx, [ebp - 0x110]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x3f4]
call fcn.0051c000
push 3
lea ecx, [ebp - 0x3f4]
call fcn.0051be70
push 0
lea ecx, [ebp - 0x3f4]
call fcn.0051dd30
push eax
push 1
push 0x5fe50c
lea ecx, [ebp - 0x188]
call fcn.00517d20
mov byte [ebp - 0x889], al
test al, al
je 0x4bf21c
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x6143f8
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614334
jmp 0x4bf251
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x611144
push 0x6143f8
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614360
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x3f4]
call fcn.0051dfd0
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x58
call fcn.005187c0
jmp 0x4bf397
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0x4c
lea ecx, [ebp - 0x650]
call fcn.00401fc0
lea ecx, [ebp - 0x650]
call fcn.005114f0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x8d
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x650]
call fcn.005113b0
mov byte [ebp - 0x889], al
test al, al
je 0x4bf33b
push 0x5fe50c
lea ecx, [ebp - 0x650]
call fcn.005111e0
mov byte [ebp - 0x889], al
test al, al
je 0x4bf33b
lea ecx, [ebp - 0x650]
call fcn.005110d0
mov byte [ebp - 0x889], al
test al, al
je 0x4bf33b
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614474
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614334
jmp 0x4bf37a
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0x7c]
call fcn.0051dd30
push eax
push 0x60ff50
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614474
lea ecx, [ebp - 0xb4]
call fcn.0051dd30
push eax
push 0x614360
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea ecx, [ebp - 0x650]
mov byte [ebp - 4], 0x58
call fcn.00511020
mov esi, dword [ebp - 0x890]
cmp byte [ebp - 0x889], 0
je 0x4bf3c4
push esi
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x130]
mov ecx, edi
push eax
call fcn.004c0b20
jmp 0x4bf8b7
cmp esi, 0x4c
jne 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051df40
cmp eax, 0xa
jl 0x4bf8b7
push 0
push 8
push 0x614888
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
test al, al
je 0x4bf553
push 0xc
lea ecx, [ebp - 0x5f0]
call fcn.00401eb0
lea ecx, [ebp - 0x5f0]
call fcn.0051e180
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x8e
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x6140f8
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.0050cda0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x891], al
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614114
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.0050cda0
movzx ecx, byte [ebp - 0x891]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x89c], eax
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x613c64
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.0050cda0
mov edx, dword [ebp - 0x89c]
movzx ecx, dl
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x5f0]
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x898], eax
call fcn.0051dfd0
mov ecx, dword [ebp - 0x898]
jmp 0x4bf7f9
push 0
push 8
push 0x6148cc
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
test al, al
je 0x4bf6a9
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
push 0xc
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x898], al
call fcn.00401eb0
lea ecx, [ebp - 0x2b0]
call fcn.0051e180
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x8f
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.004b5240
test eax, eax
js 0x4bf60f
cmp eax, dword [edi + 0x30]
jge 0x4bf60f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614160
push eax
lea ecx, [edi + 0x3c]
call fcn.004038d0
mov ecx, eax
call fcn.0051dd30
push eax
push str.HKU_
lea ecx, [ebp - 0x2b0]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x2b0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614194
push dword [ebp - 0x8c4]
lea ecx, [ebp - 0x2b0]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x2b0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.005173d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614194
push dword [ebp - 0x8b0]
lea ecx, [ebp - 0x2b0]
call fcn.0051dda0
push 0
lea ecx, [ebp - 0x2b0]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x18]
call fcn.005173d0
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0x58
call fcn.0051dfd0
mov ecx, dword [ebp - 0x898]
jmp 0x4bf7f9
push 0
push 8
push 0x6148f0
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
push 0
test al, al
je 0x4bf7c0
lea ecx, [ebp - 0x88]
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x6141fc
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614214
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x891], al
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
movzx ecx, byte [ebp - 0x891]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x89c], eax
call fcn.0051da50
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614220
lea ecx, [ebp - 0x88]
call fcn.0051c4c0
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov edx, dword [ebp - 0x89c]
movzx ecx, dl
movzx eax, al
imul ecx, eax
jmp 0x4bf7f3
push 8
push 0x61491c
lea ecx, [ebp - 0x94]
call fcn.0051b6c0
test al, al
je 0x4bf8b7
lea ecx, [ebp - 0x88]
call fcn.0051dd30
mov edx, 2
mov ecx, eax
call fcn.0050cda0
mov cl, al
mov dword [ebp - 0x898], ecx
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test cl, cl
lea ecx, [ebp - 0x7c]
push 0x60ff48
je 0x4bf831
call fcn.0051dd30
push eax
push 0x611144
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614274
jmp 0x4bf84d
call fcn.0051dd30
push eax
push 0x611144
lea ecx, [ebp - 0x94]
call fcn.0051dd30
push eax
push 0x614294
lea ecx, [ebp - 0x70]
call fcn.0051dda0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
cmp byte [ebp - 0x898], 0
je 0x4bf8a6
push dword [ebp - 0x890]
lea ecx, [ebp - 0xa8]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.004f31f0
test byte [ebp - 0x898], 2
je 0x4bf8a6
or dword [ebp - 0x8a4], 2
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x898], al
setne al
add dword [edi + 0x2c], eax
mov eax, dword [ebp - 0x890]
dec eax
mov dword [ebp - 0x890], eax
test eax, eax
jg 0x4b9291
push 0
push 0x60477c
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
lea ecx, [ebp - 0xb4]
call fcn.0051dfd0
lea ecx, [ebp - 0x110]
call fcn.0051dfd0
lea ecx, [ebp - 0x2ec]
call fcn.0051dfd0
lea ecx, [ebp - 0x7c]
call fcn.0051dfd0
lea ecx, [ebp - 0x94]
call fcn.0051dfd0
lea ecx, [ebp - 0x88]
call fcn.0051dfd0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x51
call fcn.0051dfd0
jmp 0x4bf940
push 0
push 0x614950
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004f1d80
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa8]
call fcn.004f4b70
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0x40]
call fcn.004f4b70
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x22
push dword [eax + 0x30]
call fcn.004f4b70
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x186a0
push 0
push 0x614998
push dword [eax + 0x30]
call fcn.004f4270
push 0
push 0x6149e0
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
push 8
lea ecx, [ebp - 0x15c]
call fcn.004020d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xb8]
call fcn.004f3070
push eax
lea ecx, [ebp - 0x15c]
call fcn.00403a30
mov byte [ebp - 4], 0x90
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x63
push dword [eax + 0x44]
call fcn.004f1310
push 0
lea ecx, [ebp - 0x15c]
call fcn.00403fe0
push 0
cmp dword [eax], 0
je 0x4c0451
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xb8]
call fcn.004f1d80
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xb8]
call fcn.004f4b70
push 0x614a50
push 0xffffffffffffffff
lea ecx, [edi + 0x840]
call fcn.004ee190
push 0xc
lea ecx, [ebp - 0xf8]
call fcn.00401eb0
lea ecx, [ebp - 0xf8]
call fcn.0051e180
push 0xc
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 4], 0x91
call fcn.00401eb0
lea ecx, [ebp - 0x1c4]
call fcn.0051e180
push 0
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x92
call fcn.00403fe0
mov esi, dword [eax]
mov dword [ebp - 0x8b0], esi
test esi, esi
jle 0x4bfcd0
nop dword [eax]
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x15c]
mov byte [ebp - 0x889], 0
call fcn.00403fe0
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xb8]
call fcn.004f2e50
push esi
lea ecx, [ebp - 0x15c]
mov dword [ebp - 0x89c], eax
call fcn.00403fe0
mov ecx, dword [edi + 8]
push 0
push dword [eax]
push dword [ecx + 0xb8]
mov ecx, dword [edi + 4]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0xf8]
call fcn.0051dd60
mov eax, dword [ebp - 0x89c]
cmp eax, 0x51
jne 0x4bfd72
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
push 0
call dword [0x5deaa4]
mov esi, eax
lea ecx, [ebp - 0xf8]
test esi, esi
setne byte [ebp - 0x891]
call fcn.0051dd30
xor edx, edx
mov ecx, eax
call fcn.005032a0
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
mov edx, 3
mov ecx, eax
call fcn.0050cda0
mov cl, al
mov byte [ebp - 0x889], cl
test esi, esi
je 0x4bfbec
movsd xmm0, qword [edi + 0x2b0]
comisd xmm0, xmmword [0x6be4d8]
jb 0x4bfbec
push 0xc
lea ecx, [ebp - 0x598]
call fcn.00401eb0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5ff6d4
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
push 0x614a94
push dword [edi + 0xbc]
lea ecx, [ebp - 0x598]
call fcn.0051e0c0
push 0
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x598]
push dword [edi + 0xbc]
call fcn.0051dd30
push eax
mov ecx, edi
call fcn.00494830
lea ecx, [ebp - 0x598]
mov byte [ebp - 4], 0x92
call fcn.0051dfd0
mov cl, byte [ebp - 0x889]
mov esi, dword [ebp - 0x8a4]
push 0
push 0
push 0
push 0
push 0
or esi, 4
cmp byte [ebp - 0x891], 0
push 0
cmove esi, dword [ebp - 0x8a4]
push 0
push 0
push 0
cmp cl, 2
jne 0x4bfc49
push 0x614ac0
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
push 0x614af4
lea ecx, [ebp - 0x1c4]
call fcn.0051dda0
or esi, 2
mov dword [ebp - 0x8a4], esi
jmp 0x4c00b3
test cl, cl
lea ecx, [ebp - 0xf8]
push 0x60ff48
je 0x4bfc79
call fcn.0051dd30
push eax
push 0x614b28
lea ecx, [ebp - 0x1c4]
call fcn.0051dda0
mov dword [ebp - 0x8a4], esi
jmp 0x4c00a6
call fcn.0051dd30
push eax
push 0x614b78
lea ecx, [ebp - 0x1c4]
call fcn.0051dda0
mov dword [ebp - 0x8a4], esi
mov esi, dword [ebp - 0x8b0]
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x889], al
mov ecx, edi
setne al
add dword [edi + 0x2c], eax
lea eax, [ebp - 0x1c4]
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
dec esi
mov dword [ebp - 0x8b0], esi
test esi, esi
jg 0x4bfaa0
mov esi, 1
lea ecx, [ebp - 0x15c]
push 0
mov dword [ebp - 0x8b0], esi
call fcn.00403fe0
cmp dword [eax], esi
jl 0x4c0435
push esi
lea ecx, [ebp - 0x15c]
call fcn.00403fe0
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xb8]
call fcn.004f2e50
push dword [ebp - 0x8b0]
lea ecx, [ebp - 0x15c]
mov esi, eax
call fcn.00403fe0
mov ecx, dword [edi + 8]
push 0
push dword [eax]
push dword [ecx + 0xb8]
mov ecx, dword [edi + 4]
call fcn.004f2da0
push eax
lea ecx, [ebp - 0xf8]
call fcn.0051dd60
cmp esi, 0x53
jne 0x4c0413
push 0x614dc0
lea ecx, [ebp - 0xf8]
xor esi, esi
call fcn.0051e060
test al, al
je 0x4c0293
mov ecx, edi
call fcn.004945c0
jmp 0x4c0362
cmp eax, 0x52
jne 0x4c0285
push 0x18
lea ecx, [ebp - 0x1dc]
call fcn.00401ee0
push 1
push 0x607958
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x1dc]
call fcn.0051b070
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 4], 0x94
call fcn.0051afe0
cmp eax, 1
jbe 0x4bfe2c
push 4
push 1
push 1
push 0
push str.HKLM
lea ecx, [ebp - 0xf8]
call fcn.0051c760
test eax, eax
je 0x4bfe2c
push 0
push 1
push 1
push 0
push 0x614bc0
lea ecx, [ebp - 0xf8]
call fcn.0051c760
test eax, eax
je 0x4bfe2c
push 0
push 0x612f58
push 1
push 1
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
push 0
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
lea ecx, [ebp - 0x20]
call fcn.005179e0
mov cl, al
mov byte [ebp - 0x889], cl
jmp 0x4c0242
lea ecx, [ebp - 0x1dc]
call fcn.0051afe0
cmp eax, 1
jbe 0x4bff09
push 4
push 1
push 1
push 0
push str.HKLM
lea ecx, [ebp - 0xf8]
call fcn.0051c760
test eax, eax
je 0x4bff09
push 0
push 1
push 1
push 0
push 0x614c40
lea ecx, [ebp - 0xf8]
call fcn.0051c760
test eax, eax
je 0x4bff09
push 0xc
lea ecx, [ebp - 0x58c]
call fcn.00401eb0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x614cc4
push dword [edi + 0xbc]
lea ecx, [ebp - 0x58c]
call fcn.0051e0c0
push 0
lea ecx, [ebp - 0x58c]
mov byte [ebp - 4], 0x95
call fcn.0051dd30
push eax
push 1
push 1
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
push 0
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
lea ecx, [ebp - 0x20]
call fcn.005179e0
lea ecx, [ebp - 0x58c]
mov byte [ebp - 0x889], al
mov byte [ebp - 4], 0x94
call fcn.0051dfd0
jmp 0x4c023c
lea ecx, [ebp - 0x1dc]
call fcn.0051afe0
lea ecx, [ebp - 0x1dc]
cmp eax, 1
jne 0x4bff43
push 0
call fcn.0051aff0
xor edx, edx
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4bff3f
mov byte [ebp - 0x889], 1
jmp 0x4c024a
push 0
jmp 0x4bff90
call fcn.0051afe0
lea ecx, [ebp - 0x1dc]
cmp eax, 2
jne 0x4bffb3
push 1
call fcn.0051aff0
push 0
lea ecx, [ebp - 0x1dc]
mov esi, eax
call fcn.0051aff0
mov edx, esi
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4bff82
mov byte [ebp - 0x889], 1
jmp 0x4c024a
push 1
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
push 0
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
lea ecx, [ebp - 0x20]
call fcn.005173d0
mov cl, al
mov byte [ebp - 0x889], cl
jmp 0x4c0242
call fcn.0051afe0
lea ecx, [ebp - 0x1dc]
cmp eax, 2
jbe 0x4c0277
push 1
call fcn.0051aff0
push 0
lea ecx, [ebp - 0x1dc]
mov esi, eax
call fcn.0051aff0
mov edx, esi
mov ecx, eax
call fcn.00515590
test al, al
jne 0x4bfff6
mov byte [ebp - 0x889], 1
jmp 0x4c024a
push 0x10
lea ecx, [ebp - 0x870]
call fcn.00401ef0
lea ecx, [ebp - 0x870]
call fcn.005188f0
lea eax, [ebp - 0x870]
mov byte [ebp - 4], 0x96
push eax
push 1
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
push 0
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
lea ecx, [ebp - 0x20]
call fcn.00518670
mov eax, dword [ebp - 0x868]
cmp eax, 1
je 0x4c00df
cmp eax, 7
je 0x4c00df
lea ecx, [ebp - 0x870]
mov byte [ebp - 4], 0x94
call fcn.005188e0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
push 0x614d68
lea ecx, [ebp - 0x1c4]
call fcn.0051dda0
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 4], 0x92
call fcn.0051b050
cmp byte [ebp - 0x889], 0
je 0x4bfc95
mov esi, dword [ebp - 0x8b0]
lea ecx, [ebp - 0x15c]
push esi
call fcn.00403fe0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xb8]
call fcn.004f31f0
jmp 0x4bfc9b
push 0xc
lea ecx, [ebp - 0x560]
call fcn.00401eb0
push 1
push dword [ebp - 0x870]
lea ecx, [ebp - 0x560]
call fcn.0051e110
push 0xc
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0x97
call fcn.00401eb0
push 1
push 2
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
lea ecx, [ebp - 0x22c]
call fcn.0051e110
push 1
lea edx, [ebp - 0x22c]
mov byte [ebp - 4], 0x98
lea ecx, [ebp - 0x8d0]
call fcn.0051aa30
lea ecx, [ebp - 0x8d0]
call fcn.00401b50
cmp dword [ebp - 0x868], 1
lea ecx, [ebp - 0x22c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
jne 0x4c018d
push 0x614ce4
call fcn.0051dd30
push eax
push 0x614cf0
lea ecx, [ebp - 0x22c]
call fcn.0051dd30
push eax
push 0x614ce4
jmp 0x4c01ae
push 0x614cf8
call fcn.0051dd30
push eax
push 0x5fe640
lea ecx, [ebp - 0x22c]
call fcn.0051dd30
push eax
push 0x614cf8
lea ecx, [ebp - 0x22c]
call fcn.0051dda0
push 8
push 0
push 0x5fe50c
lea ecx, [ebp - 0x22c]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x560]
call fcn.0051b3f0
push 0
lea ecx, [ebp - 0x560]
call fcn.0051dd30
push eax
push dword [ebp - 0x868]
lea ecx, [ebp - 0x1dc]
push 1
call fcn.0051aff0
push eax
push 0
lea ecx, [ebp - 0x1dc]
call fcn.0051aff0
push eax
lea ecx, [ebp - 0x20]
call fcn.005179e0
lea ecx, [ebp - 0x22c]
mov byte [ebp - 0x889], al
call fcn.0051dfd0
lea ecx, [ebp - 0x560]
call fcn.0051dfd0
lea ecx, [ebp - 0x870]
mov byte [ebp - 4], 0x94
call fcn.005188e0
mov cl, byte [ebp - 0x889]
test cl, cl
je 0x4c0064
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
push 0x614d00
jmp 0x4c008c
mov byte [ebp - 4], 0x92
call fcn.0051b050
jmp 0x4bfcc1
cmp eax, 0x53
je 0x4bfcc1
jmp 0x4bfc9b
push 0x614df0
lea ecx, [ebp - 0xf8]
call fcn.0051e060
test al, al
je 0x4c02b3
mov ecx, edi
call fcn.00494160
jmp 0x4c0362
push 0x614e10
lea ecx, [ebp - 0xf8]
call fcn.0051e060
test al, al
je 0x4c02d3
mov ecx, edi
call fcn.00494060
jmp 0x4c0362
push 0x614e44
lea ecx, [ebp - 0xf8]
call fcn.0051e060
test al, al
je 0x4c02f0
mov ecx, edi
call fcn.00493f50
jmp 0x4c0362
push 0x614e74
lea ecx, [ebp - 0xf8]
call fcn.0051e060
test al, al
je 0x4c030d
mov ecx, edi
call fcn.00493df0
jmp 0x4c0362
push 0x614ea0
lea ecx, [ebp - 0xf8]
call fcn.0051e060
test al, al
je 0x4c032a
mov ecx, edi
call fcn.00493b00
jmp 0x4c0362
push 0x614ed8
lea ecx, [ebp - 0xf8]
call fcn.0051e060
test al, al
je 0x4c0347
mov ecx, edi
call fcn.00493890
jmp 0x4c0362
push 0x614f20
lea ecx, [ebp - 0xf8]
call fcn.0051e060
test al, al
je 0x4c03be
mov ecx, edi
call fcn.00493640
mov esi, eax
test esi, esi
jle 0x4c0392
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
push 0x614f68
jmp 0x4c03e6
je 0x4c03be
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x615000
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
push 0x61503c
jmp 0x4c03e6
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x60ff48
lea ecx, [ebp - 0xf8]
call fcn.0051dd30
push eax
push 0x614fb8
lea ecx, [ebp - 0x1c4]
call fcn.0051dda0
xor eax, eax
mov ecx, edi
test esi, esi
setg al
add dword [edi + 0x2c], eax
lea eax, [ebp - 0x1c4]
inc dword [edi + 0x28]
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004c0b20
mov esi, dword [ebp - 0x8b0]
lea ecx, [ebp - 0x15c]
inc esi
push 0
mov dword [ebp - 0x8b0], esi
call fcn.00403fe0
cmp esi, dword [eax]
jle 0x4bfcf0
lea ecx, [ebp - 0x1c4]
call fcn.0051dfd0
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x90
call fcn.0051dfd0
jmp 0x4c0461
push 0x60fe40
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
mov eax, dword [edi + 0x2c]
mov ecx, dword [edi + 4]
mov dword [ebp - 0x89c], eax
mov eax, dword [edi + 0x28]
mov dword [ebp - 0x8b0], eax
mov eax, dword [edi + 8]
push 1
push dword [eax + 0xb8]
call fcn.004f1d80
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xb8]
call fcn.004f4b70
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 2
push dword [eax + 0x40]
call fcn.004f4b70
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0x30]
call fcn.004f4b70
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x186a0
push 0
push 0x60c6c4
push dword [eax + 0x30]
call fcn.004f4270
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x64
push dword [eax + 0x44]
call fcn.004f1310
lea ecx, [ebp - 0x4a8]
call fcn.005122d0
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x4a8]
call fcn.00512340
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x615068
lea ecx, [ebp - 0x70]
call fcn.0051c280
push 0
lea ecx, [ebp - 0x70]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
push 0
push 0x6150c0
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
mov ecx, 0x61510c
call fcn.0051a9f0
cdq
lea ecx, [ebp - 0x130]
mov esi, eax
mov edi, edx
call fcn.0050c7d0
add eax, esi
lea ecx, [ebp - 0x70]
adc edx, edi
push edx
push eax
call fcn.0051d120
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x61511c
lea ecx, [ebp - 0x70]
call fcn.0051c4c0
push 0
lea ecx, [ebp - 0x70]
call fcn.0051dd30
push eax
lea ecx, [ebp - 0x130]
call fcn.0050b8e0
push 0
lea ecx, [ebp - 0x130]
call fcn.0050b7a0
mov ecx, dword [ebp - 0x8a0]
push 0x615138
push 0x64
lea ecx, [ecx + 0x840]
call fcn.004ee190
mov esi, dword [ebp - 0x8a4]
lea ecx, [ebp - 0x15c]
mov eax, dword [ebp - 0x89c]
or esi, 1
cmp eax, dword [ebp - 0x8b0]
cmovae esi, dword [ebp - 0x8a4]
call fcn.00403270
lea ecx, [ebp - 0xa8]
call fcn.00403270
lea ecx, [ebp - 0x1ac]
call fcn.00403270
lea ecx, [ebp - 0x130]
call fcn.00401f90
lea ecx, [ebp - 0xbc]
call fcn.00403270
lea ecx, [ebp - 0x70]
call fcn.0051dfd0
lea ecx, [ebp - 0xec]
call fcn.0051dfd0
lea ecx, [ebp - 0xe0]
call fcn.0051dfd0
push fcn.005188e0
push 2
push 0x10
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x17
push eax
call fcn.0041eb24
push fcn.00518890
push 3
push 0xc
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x16
push eax
call fcn.0041eb24
push fcn.005187c0
push 3
push 4
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x15
push eax
call fcn.0041eb24
lea ecx, [ebp - 0x200]
call fcn.0051dfd0
lea ecx, [ebp - 0x454]
call fcn.0051dfd0
lea ecx, [ebp - 0x2f8]
call fcn.0051dfd0
lea ecx, [ebp - 0x460]
call fcn.0051dfd0
lea ecx, [ebp - 0x56c]
call fcn.0051dfd0
lea ecx, [ebp - 0x304]
call fcn.0051dfd0
lea ecx, [ebp - 0x400]
call fcn.0051dfd0
lea ecx, [ebp - 0x46c]
call fcn.0051dfd0
lea ecx, [ebp - 0x478]
call fcn.0051dfd0
lea ecx, [ebp - 0x40c]
call fcn.0051dfd0
lea ecx, [ebp - 0x310]
call fcn.0051dfd0
lea ecx, [ebp - 0x328]
call fcn.0051dfd0
lea ecx, [ebp - 0x484]
call fcn.0051dfd0
lea ecx, [ebp - 0x490]
call fcn.0051dfd0
lea ecx, [ebp - 0x334]
call fcn.0051dfd0
lea ecx, [ebp - 0x3c4]
call fcn.0051dfd0
lea ecx, [ebp - 0x49c]
call fcn.0051dfd0
lea ecx, [ebp - 0x1b8]
call fcn.0051dfd0
lea ecx, [ebp - 0x298]
call fcn.0051dfd0
lea ecx, [ebp - 0x268]
call fcn.0051dfd0
lea ecx, [ebp - 0x238]
call fcn.0051dfd0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0041e885
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret