Function at 0x4b8a38
Capabilities:
Parse credit card information

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 0x55285d
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x968
mov eax, dword [0x5bd200]
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 - 0x8ec], edi
push 0
call dword [0x55688c]
xor ecx, ecx
mov dword [ebp - 0x8d4], 0
call fcn.0040fd90
test eax, eax
je 0x4b1e4f
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 4
push dword [eax + 0x3c]
call fcn.00439760
test eax, eax
je 0x4b1eee
push 0x58d78c
push 0xffffffffffffffb0
lea ecx, [edi + 0x930]
call fcn.004404b0
push 0xc
lea ecx, [ebp - 0x5f4]
call fcn.00401e00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d7c4
lea ecx, [edi + 0x354]
call fcn.00405820
push eax
lea ecx, [ebp - 0x5f4]
call fcn.00404d30
push 0
push 0
push 0
push 0xc
lea ecx, [ebp - 0x5f4]
mov dword [ebp - 4], 0
call fcn.00405820
mov edx, 0x64
mov ecx, eax
call fcn.0044a470
lea ecx, [ebp - 0x5f4]
mov dword [ebp - 4], 0xffffffff
call fcn.00405360
push 0x58d7e8
push 0xffffffffffffffff
lea ecx, [edi + 0x930]
call fcn.004404b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x58d840
push dword [eax + 0x38]
call fcn.00438b50
push 0xc
lea ecx, [ebp - 0x274]
call fcn.00401e00
lea ecx, [ebp - 0x274]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x280]
mov dword [ebp - 4], 1
call fcn.00401e00
lea ecx, [ebp - 0x280]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x2d4]
mov byte [ebp - 4], 2
call fcn.00401e00
lea ecx, [ebp - 0x2d4]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x1f0]
mov byte [ebp - 4], 3
call fcn.00401e00
lea ecx, [ebp - 0x1f0]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x4f0]
mov byte [ebp - 4], 4
call fcn.00401e00
lea ecx, [ebp - 0x4f0]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x490]
mov byte [ebp - 4], 5
call fcn.00401e00
lea ecx, [ebp - 0x490]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x3d0]
mov byte [ebp - 4], 6
call fcn.00401e00
lea ecx, [ebp - 0x3d0]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x4fc]
mov byte [ebp - 4], 7
call fcn.00401e00
lea ecx, [ebp - 0x4fc]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x520]
mov byte [ebp - 4], 8
call fcn.00401e00
lea ecx, [ebp - 0x520]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 9
call fcn.00401e00
lea ecx, [ebp - 0x484]
call fcn.00404bc0
mov byte [ebp - 4], 0xa
push 0xc
lea ecx, [ebp - 0x3c4]
call fcn.00401e00
lea ecx, [ebp - 0x3c4]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x550]
mov byte [ebp - 4], 0xb
call fcn.00401e00
lea ecx, [ebp - 0x550]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 0xc
call fcn.00401e00
lea ecx, [ebp - 0x4a8]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x544]
mov byte [ebp - 4], 0xd
call fcn.00401e00
lea ecx, [ebp - 0x544]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x478]
mov byte [ebp - 4], 0xe
call fcn.00401e00
lea ecx, [ebp - 0x478]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 0xf
call fcn.00401e00
lea ecx, [ebp - 0x3b8]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 0x10
call fcn.00401e00
lea ecx, [ebp - 0x5a0]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x538]
mov byte [ebp - 4], 0x11
call fcn.00401e00
lea ecx, [ebp - 0x538]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x3ac]
mov byte [ebp - 4], 0x12
call fcn.00401e00
lea ecx, [ebp - 0x3ac]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x52c]
mov byte [ebp - 4], 0x13
call fcn.00401e00
lea ecx, [ebp - 0x52c]
call fcn.00404bc0
mov byte [ebp - 4], 0x14
call dword [0x556410]
mov ecx, eax
call fcn.0041c6e0
mov ecx, eax
mov edx, str.HKLM
test ecx, ecx
mov dword [ebp - 0x8f8], ecx
mov eax, str.HKLM64
cmove eax, edx
mov edx, 0x575cb0
mov dword [ebp - 0x8d8], eax
mov eax, str.HKLM32
push 0
push 0
cmove eax, edx
lea ecx, [ebp - 0x274]
push 0x104
mov dword [ebp - 0x8f4], eax
call fcn.00405dd0
mov esi, dword [0x5564b8]
push eax
push 1
push dword [edi + 0x38]
push 0x1a
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x280]
call fcn.00405dd0
push eax
push 1
push dword [edi + 0x38]
push 0x1c
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x1f0]
call fcn.00405dd0
push eax
push 1
push dword [edi + 0x38]
push 2
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x490]
call fcn.00405dd0
push eax
push 1
push dword [edi + 0x38]
push 0
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x478]
call fcn.00405dd0
push eax
push 1
push dword [edi + 0x38]
push 0x23
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x4fc]
call fcn.00405dd0
push eax
push 1
push dword [edi + 0x38]
push 7
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x520]
call fcn.00405dd0
push eax
push 1
push dword [edi + 0x38]
push 5
push 0
call esi
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x3d0]
call fcn.00405dd0
push eax
push 0x58d860
push dword [edi + 0x38]
call dword [0x5566a8]
push 0x400
lea ecx, [ebp - 0x3d0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x3d0]
call fcn.00405820
push eax
call dword [0x556414]
push 0x104
push 0
push 0
push 0x104
lea ecx, [ebp - 0x484]
call fcn.00405dd0
push eax
call dword [0x556358]
cmp dword [ebp - 0x8f8], 0
je 0x4b2341
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x57d2e4
lea ecx, [ebp - 0x484]
call fcn.00405820
push eax
lea ecx, [ebp - 0x3c4]
call fcn.00405430
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d870
lea ecx, [ebp - 0x484]
call fcn.00405820
push eax
lea ecx, [ebp - 0x550]
call fcn.00405430
jmp 0x4b2373
push 0x104
push 0
push 0
push 0x104
lea ecx, [ebp - 0x3c4]
call fcn.00405dd0
push eax
call dword [0x5563b0]
lea eax, [ebp - 0x3c4]
push eax
lea ecx, [ebp - 0x550]
call fcn.00405020
push dword [ebp - 0x8f8]
lea edx, [ebp - 0x544]
lea ecx, [ebp - 0x4a8]
call fcn.0041d790
push 0
push 0
push 0x104
lea ecx, [ebp - 0x3b8]
call fcn.00405dd0
push eax
push 1
push 0
push 0x2b
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x3ac]
call fcn.00405dd0
push eax
push 1
push 0
push 0x17
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x52c]
call fcn.00405dd0
push eax
push 1
push 0
push 0x19
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x5a0]
call fcn.00405dd0
push eax
push 1
push 0
push 0x18
push 0
call esi
push 0xc
lea ecx, [ebp - 0x220]
call fcn.00401e00
lea ecx, [ebp - 0x220]
call fcn.00404bc0
push 0
push 0
push 0x104
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 0x15
call fcn.00405dd0
push eax
push 1
push 0
push 0x28
push 0
call esi
lea ecx, [ebp - 0x220]
call fcn.004053c0
push eax
lea ecx, [ebp - 0x274]
call fcn.00406d30
lea ecx, [ebp - 0x220]
call fcn.004053c0
push eax
lea ecx, [ebp - 0x280]
call fcn.00406d30
push 1
push 0x58d884
lea ecx, [ebp - 0x2d4]
call fcn.004053e0
lea ecx, [ebp - 0x220]
call fcn.004053c0
push eax
lea ecx, [ebp - 0x1f0]
call fcn.00406d30
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x580e90
lea ecx, [ebp - 0x274]
call fcn.00405820
push eax
lea ecx, [ebp - 0x4f0]
call fcn.00405430
lea ecx, [ebp - 0x220]
call fcn.004053c0
push eax
lea ecx, [ebp - 0x490]
call fcn.00406d30
lea ecx, [ebp - 0x220]
call fcn.004053c0
push eax
lea ecx, [ebp - 0x3d0]
call fcn.00406d30
lea ecx, [ebp - 0x220]
call fcn.004053c0
push eax
lea ecx, [ebp - 0x4fc]
call fcn.00406d30
lea ecx, [ebp - 0x220]
call fcn.004053c0
push eax
lea ecx, [ebp - 0x520]
call fcn.00406d30
push 1
lea ecx, [ebp - 0x3b8]
call fcn.00405990
lea eax, [ebp - 0x3b8]
push eax
lea ecx, [ebp - 0x538]
call fcn.00405020
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x575ca8
lea ecx, [ebp - 0x4a8]
call fcn.00405820
push eax
lea ecx, [ebp - 0x3b8]
call fcn.004075e0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x575ca8
lea ecx, [ebp - 0x544]
call fcn.00405820
push eax
lea ecx, [ebp - 0x538]
call fcn.004075e0
push fcn.0040c980
push fcn.0040c910
push 3
push 4
lea eax, [ebp - 0x20]
push eax
call fcn.00539094
push fcn.00405360
push fcn.0040c8d0
push 3
push 0xc
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x16
push eax
call fcn.00539094
push fcn.00405360
push fcn.0040c8b0
push 2
push 0x10
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x17
push eax
call fcn.00539094
push 0xc
lea ecx, [ebp - 0x268]
mov byte [ebp - 4], 0x18
call fcn.00401e00
lea ecx, [ebp - 0x268]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x19
call fcn.00401e00
lea ecx, [ebp - 0x10c]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x1a
call fcn.00401e00
lea ecx, [ebp - 0x70]
call fcn.00404bc0
push 0x38
lea ecx, [ebp - 0x444]
mov byte [ebp - 4], 0x1b
call fcn.00401e20
lea ecx, [ebp - 0x444]
call fcn.00401e30
mov byte [ebp - 4], 0x1c
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa0]
call fcn.0042ec60
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push dword [eax + 0xa0]
call fcn.0043b8d0
push 8
lea ecx, [ebp - 0xbc]
call fcn.00401750
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa0]
call fcn.0043a870
push eax
lea ecx, [ebp - 0xbc]
call fcn.004015d0
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0x1d
call fcn.004244e0
call fcn.00424540
push edx
push eax
lea ecx, [edi + 0x128]
call fcn.004062d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d8a8
lea ecx, [edi + 0x128]
call fcn.00405820
push eax
push 0x58d8b4
lea ecx, [edi + 0x134]
call fcn.00405820
push eax
lea ecx, [edi + 0x128]
call fcn.00405430
push 0x20
lea ecx, [ebp - 0xf4]
call fcn.00402410
push 0
push 0x22
lea ecx, [edi + 0x128]
call fcn.00405820
push eax
lea ecx, [ebp - 0xf4]
call fcn.004196a0
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x1e
call fcn.00419780
test eax, eax
jne 0x4b2750
lea ecx, [edi + 0x128]
call fcn.00405370
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d8c8
lea ecx, [edi + 0x354]
call fcn.00405820
push eax
push 0x58d90c
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0xf4]
call fcn.0041a5c0
push 0
push 0
push 0
push 0
push 0
push 0x58d920
push 0x5761c0
push 0x57ac88
push str.2.9.1.0
push 0x58d934
lea ecx, [edi + 0x354]
call fcn.00405820
push eax
push 0x5786d4
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0xf4]
call fcn.0041a5c0
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x450]
call fcn.00424490
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d94c
lea ecx, [ebp - 0x70]
call fcn.00405820
push eax
push 0x58d958
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0xf4]
call fcn.0041a5c0
push 0
push 0x58d988
lea ecx, [ebp - 0xf4]
call fcn.0041a620
mov dword [edi + 0x2c], 0
lea ecx, [ebp - 0xbc]
push 0
mov dword [edi + 0x28], 0
call fcn.0051ebf0
cmp dword [eax], 0
je 0x4b5142
push 0x58d9e8
push 0xffffffffffffffff
lea ecx, [edi + 0x930]
mov dword [ebp - 0x8c8], 0
call fcn.004404b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa0]
call fcn.00438420
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58da24
lea ecx, [edi + 0x140]
call fcn.00405820
push eax
lea ecx, [ebp - 0x268]
call fcn.00405430
lea ecx, [ebp - 0x268]
call fcn.00405820
push eax
call dword [0x5564e4]
test eax, eax
je 0x4b5154
push 1
lea ecx, [ebp - 0x268]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402090
push 8
lea ecx, [ebp - 0x820]
call fcn.00401750
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
lea ecx, [ebp - 0x820]
mov eax, dword [eax]
inc eax
push eax
call fcn.0051e180
mov byte [ebp - 4], 0x1f
cmp dword [ebp - 0x820], 0
jne 0x4b2936
lea ecx, [ebp - 0x820]
mov byte [ebp - 4], 0x1e
call fcn.0051e110
jmp 0x4b5154
mov esi, 1
lea ecx, [ebp - 0xbc]
push 0
mov dword [ebp - 0x8dc], esi
call fcn.0051ebf0
cmp dword [eax], esi
jl 0x4b2bf5
nop word [eax + eax]
push esi
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
push dword [ebp - 0x8dc]
lea ecx, [ebp - 0x820]
mov esi, eax
call fcn.0051e100
mov ecx, dword [esi]
mov esi, dword [ebp - 0x8dc]
push esi
mov dword [eax], ecx
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.0043ae80
test eax, eax
je 0x4b2bd9
mov eax, dword [eax]
lea ecx, [ebp - 0x10c]
cdq
push edx
push eax
call fcn.004061c0
push 0x575cb0
push 0x57b708
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405010
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.004053c0
add dword [ebp - 0x8c8], eax
lea ecx, [ebp - 0x10c]
push 0x575cb0
push 0x58ce44
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x10]
call fcn.00405010
push 0x575cb0
push 0x58da38
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x1c]
call fcn.00405010
push 0x575cb0
push 0x58ce60
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x28]
call fcn.00405010
push 0x575cb0
push 0x58da5c
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x34]
call fcn.00405010
push 0x575cb0
push 0x58da6c
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x4c]
call fcn.00405010
push esi
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 1
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.0043abb0
push eax
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x40]
call fcn.004057e0
push 0x58da84
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x40]
call fcn.004050d0
test al, al
je 0x4b2b85
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x40]
call fcn.00405370
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
mov ecx, eax
call fcn.0041cdb0
lea ecx, [ebp - 0x820]
push esi
test al, al
je 0x4b2bc3
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00428560
jmp 0x4b2bd9
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00427df0
inc esi
lea ecx, [ebp - 0xbc]
push 0
mov dword [ebp - 0x8dc], esi
call fcn.0051ebf0
cmp esi, dword [eax]
jle 0x4b2960
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0xa
push dword [eax + 0x44]
call fcn.0043b930
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
mov esi, dword [eax]
mov dword [ebp - 0x8dc], esi
test esi, esi
jle 0x4b34f3
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x4c]
call fcn.004053c0
test eax, eax
je 0x4b2c59
push 2
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x4c]
call fcn.00405820
push eax
call dword [0x55687c]
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.004053c0
cmp eax, 0xa
jl 0x4b34e4
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x28]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bd310
push 0x58da98
push esi
lea ecx, [ebp - 0x820]
mov dword [ebp - 0x8cc], eax
call fcn.0051e100
lea ecx, [eax + 0x28]
call fcn.004050d0
mov byte [ebp - 0x8c1], al
test al, al
jne 0x4b2cc8
cmp dword [ebp - 0x8cc], 0
jl 0x4b34e4
push 0xc
lea ecx, [ebp - 0x5e8]
call fcn.00401e00
lea ecx, [ebp - 0x5e8]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0x20
call fcn.00401e00
lea ecx, [ebp - 0x100]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x21
call fcn.00401e00
lea ecx, [ebp - 0x130]
call fcn.00404bc0
push esi
lea ecx, [ebp - 0x820]
mov byte [ebp - 4], 0x22
call fcn.0051e100
lea ecx, [eax + 0x34]
call fcn.004053c0
lea ecx, [ebp - 0x820]
test eax, eax
je 0x4b2d6f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
push esi
call fcn.0051e100
lea ecx, [eax + 0x34]
call fcn.00405820
push eax
lea ecx, [ebp - 0x100]
call fcn.00405430
jmp 0x4b2db7
push esi
call fcn.0051e100
add eax, 4
lea ecx, [ebp - 0x100]
push eax
call fcn.00405020
push 1
lea ecx, [ebp - 0x100]
call fcn.00405990
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x100]
call fcn.00407230
lea ecx, [ebp - 0x100]
call fcn.004053c0
cmp eax, 2
jl 0x4b34bf
push 0x58dab0
lea ecx, [ebp - 0x100]
call fcn.004050d0
test al, al
jne 0x4b34bf
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
add eax, 0x40
lea ecx, [ebp - 0x130]
push eax
call fcn.00405020
lea ecx, [ebp - 0x130]
call fcn.004053c0
cmp eax, 4
jl 0x4b2e36
push 0x58da84
lea ecx, [ebp - 0x130]
call fcn.004050d0
test al, al
jne 0x4b2e36
push str.Microsoft
lea ecx, [ebp - 0x130]
call fcn.004050d0
test al, al
je 0x4b2e41
lea ecx, [ebp - 0x130]
call fcn.00405370
cmp byte [ebp - 0x8c1], 0
je 0x4b3226
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x8d0], 0
jbe 0x4b2f84
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x274]
call fcn.00405820
push dword [ebp - 0x8d0]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x280]
call fcn.00405820
push dword [ebp - 0x8d0]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x2d4]
call fcn.00405820
push dword [ebp - 0x8d0]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x1f0]
call fcn.00405820
push dword [ebp - 0x8d0]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
mov eax, dword [ebp - 0x8d0]
inc eax
mov dword [ebp - 0x8d0], eax
cmp eax, dword [edi + 0x30]
jb 0x4b2e62
push 0
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1f0]
call fcn.00405820
mov edx, 0x575ca8
mov ecx, eax
call fcn.004f0610
push 0
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
lea ecx, [ebp - 0x478]
call fcn.00405820
mov edx, 0x575ca8
mov ecx, eax
call fcn.004f0610
push 0
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
lea ecx, [ebp - 0x3ac]
call fcn.00405820
mov edx, 0x575ca8
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x130]
call fcn.004053c0
test eax, eax
je 0x4b3492
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x8d0], 0
jbe 0x4b3186
nop word [eax + eax]
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x274]
call fcn.00405820
push dword [ebp - 0x8d0]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x280]
call fcn.00405820
push dword [ebp - 0x8d0]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x2d4]
call fcn.00405820
push dword [ebp - 0x8d0]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x1f0]
call fcn.00405820
push dword [ebp - 0x8d0]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
mov eax, dword [ebp - 0x8d0]
inc eax
mov dword [ebp - 0x8d0], eax
cmp eax, dword [edi + 0x30]
jb 0x4b3030
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1f0]
call fcn.00405820
mov edx, 0x575ca8
mov ecx, eax
call fcn.004f0610
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
lea ecx, [ebp - 0x478]
call fcn.00405820
mov edx, 0x575ca8
mov ecx, eax
call fcn.004f0610
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
lea ecx, [ebp - 0x3ac]
call fcn.00405820
mov edx, 0x575ca8
jmp 0x4b348b
cmp dword [ebp - 0x8cc], 0
jl 0x4b3492
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x274]
call fcn.00405820
push dword [ebp - 0x8cc]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x280]
call fcn.00405820
push dword [ebp - 0x8cc]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x2d4]
call fcn.00405820
push dword [ebp - 0x8cc]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x1f0]
call fcn.00405820
push dword [ebp - 0x8cc]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x130]
call fcn.004053c0
test eax, eax
je 0x4b3492
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x274]
call fcn.00405820
push dword [ebp - 0x8cc]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x280]
call fcn.00405820
push dword [ebp - 0x8cc]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x2d4]
call fcn.00405820
push dword [ebp - 0x8cc]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x100]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x130]
call fcn.00405820
push eax
push 0x575ca8
lea ecx, [ebp - 0x1f0]
call fcn.00405820
push dword [ebp - 0x8cc]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.004f0610
lea ecx, [ebp - 0x130]
call fcn.00405360
lea ecx, [ebp - 0x100]
call fcn.00405360
lea ecx, [ebp - 0x5e8]
mov byte [ebp - 4], 0x1f
call fcn.00405360
mov esi, dword [ebp - 0x8dc]
jmp 0x4b34e4
lea ecx, [ebp - 0x130]
call fcn.00405360
lea ecx, [ebp - 0x100]
call fcn.00405360
lea ecx, [ebp - 0x5e8]
mov byte [ebp - 4], 0x1f
call fcn.00405360
dec esi
mov dword [ebp - 0x8dc], esi
test esi, esi
jg 0x4b2c22
push 0xc
lea ecx, [ebp - 0x118]
call fcn.00401e00
lea ecx, [ebp - 0x118]
call fcn.00404bc0
mov byte [ebp - 4], 0x23
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x14
push dword [eax + 0x44]
call fcn.0043b930
cmp dword [ebp - 0x8c8], 0
je 0x4b37c0
push 0
push 0x20019
push 0x58dac8
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x8e0], 0x58dac8
mov dword [ebp - 0x8dc], 0x58dae4
call fcn.0040c940
push 0
push 0x20019
push 0x58dae4
lea ecx, [ebp - 0x1c]
call fcn.0040c940
push 0xc
lea ecx, [ebp - 0x2a4]
call fcn.00401e00
lea ecx, [ebp - 0x2a4]
call fcn.00404bc0
xor esi, esi
mov byte [ebp - 4], 0x24
mov dword [ebp - 0x8cc], esi
nop dword [eax]
lea ecx, [ebp - 0x20]
add ecx, esi
call fcn.0040d0e0
test eax, eax
je 0x4b3799
lea edi, [eax - 1]
test edi, edi
js 0x4b3799
nop dword [eax]
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x20]
push edi
add ecx, esi
call fcn.0040cfc0
test al, al
je 0x4b3790
push 0
mov esi, dword [ebp + esi - 0x8e0]
lea ecx, [ebp - 0x118]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58db18
push dword [ebp - 0x44]
push 0x575ca8
push esi
call fcn.00405430
push 0
push 0x20019
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040c940
test al, al
je 0x4b3632
lea eax, [ebp - 0x2a4]
push eax
push 0x575cb0
lea ecx, [ebp - 0x18]
call fcn.0040cb10
test al, al
jne 0x4b36fa
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58db38
push dword [ebp - 0x44]
lea ecx, [ebp - 0x118]
push 0x575ca8
push esi
call fcn.00405430
push 0
push 0x20019
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040c940
test al, al
je 0x4b3692
lea eax, [ebp - 0x2a4]
push eax
push 0x575cb0
lea ecx, [ebp - 0x18]
call fcn.0040cb10
test al, al
jne 0x4b36fa
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58db58
push dword [ebp - 0x44]
lea ecx, [ebp - 0x118]
push 0x575ca8
push esi
call fcn.00405430
push 0
push 0x20019
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040c940
test al, al
je 0x4b378a
lea eax, [ebp - 0x2a4]
push eax
push 0x575cb0
lea ecx, [ebp - 0x18]
call fcn.0040cb10
test al, al
je 0x4b378a
push 0
lea ecx, [ebp - 0x2a4]
call fcn.00405cb0
lea ecx, [ebp - 0x2a4]
call fcn.004053c0
cmp eax, 4
jl 0x4b378a
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051ebf0
cmp dword [eax], esi
jl 0x4b378a
nop dword [eax]
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405bb0
test al, al
jne 0x4b3778
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x2a4]
call fcn.00406ef0
test eax, eax
jne 0x4b39bf
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051ebf0
cmp esi, dword [eax]
jle 0x4b3730
mov esi, dword [ebp - 0x8cc]
sub edi, 1
jns 0x4b35b0
add esi, 4
mov dword [ebp - 0x8cc], esi
cmp esi, 8
jl 0x4b3590
lea ecx, [ebp - 0x2a4]
mov byte [ebp - 4], 0x23
call fcn.00405360
mov edi, dword [ebp - 0x8ec]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x1e
push dword [eax + 0x44]
call fcn.0043b930
cmp dword [ebp - 0x8c8], 0
je 0x4b3aa2
push 0
push 0x20019
push 0x58db80
lea ecx, [ebp - 0x20]
call fcn.0040c940
lea ecx, [ebp - 0x20]
call fcn.0040d0e0
push 0xc
lea ecx, [ebp - 0x238]
mov esi, eax
call fcn.00401e00
lea ecx, [ebp - 0x238]
call fcn.00404bc0
mov byte [ebp - 4], 0x25
test esi, esi
je 0x4b3a93
lea eax, [esi - 1]
mov dword [ebp - 0x8dc], eax
test eax, eax
js 0x4b3a93
mov edi, eax
lea eax, [ebp - 0x44]
push eax
push edi
lea ecx, [ebp - 0x20]
call fcn.0040cfc0
test al, al
je 0x4b3a84
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 - 0x118]
push 0x575ca8
push 0x58db80
call fcn.00405430
push 0
push 0x20019
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040c940
lea eax, [ebp - 0x238]
push eax
push 0x57b094
lea ecx, [ebp - 0x1c]
call fcn.0040cb10
test al, al
je 0x4b38b4
lea ecx, [ebp - 0x238]
call fcn.004053c0
cmp eax, 4
jge 0x4b3925
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5857a0
lea ecx, [ebp - 0x118]
call fcn.00407230
push 0
push 0x20019
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040c940
lea eax, [ebp - 0x238]
push eax
push 0x585808
lea ecx, [ebp - 0x1c]
call fcn.0040cb10
test al, al
je 0x4b3a84
lea ecx, [ebp - 0x238]
call fcn.004053c0
cmp eax, 4
jl 0x4b3a84
push 0
lea ecx, [ebp - 0x238]
call fcn.00405cb0
lea ecx, [ebp - 0x238]
call fcn.004053c0
cmp eax, 4
jl 0x4b3a84
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051ebf0
cmp dword [eax], esi
jl 0x4b3a84
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405bb0
test al, al
jne 0x4b39a8
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x238]
call fcn.00406ef0
test eax, eax
jne 0x4b3a2a
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051ebf0
cmp esi, dword [eax]
jle 0x4b3960
jmp 0x4b3a84
mov esi, dword [ebp - 0x8cc]
lea ecx, [ebp - 0x118]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x44]
push 0x575ca8
push dword [ebp + esi - 0x8e0]
call fcn.00405430
push 0
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040e350
test al, al
jne 0x4b3790
push 0
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040e350
jmp 0x4b3790
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 - 0x118]
push 0x575ca8
push 0x58db80
call fcn.00405430
push 0
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040e350
test al, al
jne 0x4b3a84
push 0
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040e350
sub edi, 1
jns 0x4b3832
mov edi, dword [ebp - 0x8ec]
lea ecx, [ebp - 0x238]
mov byte [ebp - 4], 0x23
call fcn.00405360
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x28
push dword [eax + 0x44]
call fcn.0043b930
call fcn.00409560
cmp dword [ebp - 0x8c8], 0
je 0x4b45a2
movsd xmm1, qword [0x5ab090]
comisd xmm1, xmm0
jbe 0x4b3e9d
push 0xc
lea ecx, [ebp - 0x2bc]
call fcn.00401e00
lea ecx, [ebp - 0x2bc]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 0x26
call fcn.00401e00
lea ecx, [ebp - 0x208]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x2c8]
mov byte [ebp - 4], 0x27
call fcn.00401e00
lea ecx, [ebp - 0x2c8]
call fcn.00404bc0
push 4
lea ecx, [ebp - 0x824]
mov byte [ebp - 4], 0x28
call fcn.004093c0
lea ecx, [ebp - 0x824]
call fcn.0040c910
lea eax, [ebp - 0x824]
mov byte [ebp - 4], 0x29
push eax
push 0x5aaf54
push 1
push 0
push 0x5aaf44
call dword [0x556888]
test eax, eax
js 0x4b3e68
push 4
lea ecx, [ebp - 0x840]
call fcn.004093c0
lea ecx, [ebp - 0x840]
call fcn.0040c910
mov byte [ebp - 4], 0x2a
lea edx, [ebp - 0x840]
mov eax, dword [ebp - 0x824]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x14]
call eax
test eax, eax
js 0x4b3e5d
mov eax, dword [ebp - 0x840]
lea edx, [ebp - 0x17c]
push edx
mov dword [ebp - 0x17c], 0
lea edx, [ebp - 0x850]
push edx
mov ecx, dword [eax]
push 5
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
js 0x4b3e5d
mov esi, dword [0x5568a0]
nop dword [eax + eax]
mov eax, dword [ebp - 0x17c]
test eax, eax
je 0x4b3e57
xor edi, edi
test eax, eax
je 0x4b3e29
nop dword [eax + eax]
mov eax, dword [ebp - 0x850]
lea ecx, [ebp - 0x2bc]
push dword [eax + edi*4]
call fcn.00405010
mov eax, dword [ebp - 0x850]
push dword [eax + edi*4]
call esi
push 4
lea ecx, [ebp - 0x838]
call fcn.004093c0
lea ecx, [ebp - 0x838]
call fcn.0040c910
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x2bc]
mov eax, dword [ebp - 0x824]
mov esi, dword [eax]
lea eax, [ebp - 0x838]
push eax
push 0x5aaf84
call fcn.00405820
push eax
push dword [ebp - 0x824]
mov eax, dword [esi + 0x18]
call eax
test eax, eax
js 0x4b3e07
mov eax, dword [ebp - 0x838]
lea edx, [ebp - 0x854]
mov dword [ebp - 0x854], 0
mov dword [ebp - 0x858], 0
push edx
mov ecx, dword [eax]
push eax
mov eax, dword [ecx + 0x84]
call eax
mov eax, dword [ebp - 0x838]
lea edx, [ebp - 0x858]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x8c]
call eax
push dword [ebp - 0x854]
lea ecx, [ebp - 0x208]
call fcn.00405010
push dword [ebp - 0x858]
lea ecx, [ebp - 0x2c8]
call fcn.00405010
mov eax, dword [ebp - 0x854]
mov esi, dword [0x5568a0]
test eax, eax
je 0x4b3ce7
push eax
call esi
mov eax, dword [ebp - 0x858]
test eax, eax
je 0x4b3cf4
push eax
call esi
lea ecx, [ebp - 0x2c8]
call fcn.004053c0
test eax, eax
je 0x4b3d33
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2c8]
call fcn.00405820
push eax
push 0x576604
lea ecx, [ebp - 0x208]
call fcn.00407230
push 0
lea ecx, [ebp - 0x208]
call fcn.00405cb0
push 0
push 0
push 0x575cb0
push 0x576600
lea ecx, [ebp - 0x208]
call fcn.004078d0
lea ecx, [ebp - 0x208]
call fcn.004053c0
cmp eax, 4
jl 0x4b3e07
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051ebf0
cmp dword [eax], esi
jl 0x4b3e07
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405bb0
test al, al
jne 0x4b3dd4
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x208]
call fcn.00406ef0
test eax, eax
jne 0x4b3de8
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051ebf0
cmp esi, dword [eax]
jle 0x4b3d90
jmp 0x4b3e07
mov eax, dword [ebp - 0x824]
lea ecx, [ebp - 0x2bc]
mov esi, dword [eax]
call fcn.00405820
push eax
push dword [ebp - 0x824]
mov eax, dword [esi + 0x1c]
call eax
lea ecx, [ebp - 0x838]
mov byte [ebp - 4], 0x2a
call fcn.0051e0b0
mov esi, dword [0x5568a0]
inc edi
cmp edi, dword [ebp - 0x17c]
jb 0x4b3c00
push dword [ebp - 0x850]
call esi
mov eax, dword [ebp - 0x840]
lea edx, [ebp - 0x17c]
push edx
lea edx, [ebp - 0x850]
push edx
mov ecx, dword [eax]
push 5
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
jns 0x4b3be0
mov edi, dword [ebp - 0x8ec]
lea ecx, [ebp - 0x840]
call fcn.0051e0b0
lea ecx, [ebp - 0x824]
call fcn.0051e0b0
lea ecx, [ebp - 0x2c8]
call fcn.00405360
lea ecx, [ebp - 0x208]
call fcn.00405360
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x23
call fcn.00405360
jmp 0x4b45a2
push 4
lea ecx, [ebp - 0x82c]
call fcn.004093c0
lea ecx, [ebp - 0x82c]
call fcn.0040c910
lea eax, [ebp - 0x82c]
push eax
push 0x5703a0
push 1
push 0
push 0x5703b0
call dword [0x556888]
test eax, eax
jns 0x4b3ee8
lea ecx, [ebp - 0x82c]
mov byte [ebp - 4], 0x23
call fcn.0051e0b0
jmp 0x4b45a2
lea ecx, [ebp - 0x968]
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x958]
movups xmmword [ebp - 0x918], xmm0
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x948]
movups xmmword [ebp - 0x8e8], xmm0
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x938]
movups xmmword [ebp - 0x978], xmm0
call fcn.004011a0
mov edi, eax
mov byte [ebp - 4], 0x30
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x918]
mov ecx, dword [ebp - 0x82c]
mov edx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
mov esi, dword [ecx]
movups xmmword [edx], xmm0
movups xmm0, xmmword [ebp - 0x8e8]
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x978]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [edi]
push ecx
movups xmmword [eax], xmm0
mov eax, dword [esi + 0x28]
call eax
shr eax, 0x1f
lea ecx, [ebp - 0x938]
mov dword [ebp - 0x8dc], eax
call fcn.00401230
lea ecx, [ebp - 0x948]
call fcn.00401230
lea ecx, [ebp - 0x958]
call fcn.00401230
lea ecx, [ebp - 0x968]
mov byte [ebp - 4], 0x2c
call fcn.00401230
cmp byte [ebp - 0x8dc], 0
jne 0x4b458d
push 4
lea ecx, [ebp - 0x834]
call fcn.004093c0
lea ecx, [ebp - 0x834]
call fcn.0040c910
push 0x575ca8
lea ecx, [ebp - 0x8fc]
mov byte [ebp - 4], 0x31
call fcn.00401080
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x82c]
mov esi, dword [ecx]
lea ecx, [ebp - 0x834]
push ecx
mov ecx, eax
call fcn.00401190
push eax
push dword [ebp - 0x82c]
mov eax, dword [esi + 0x1c]
call eax
shr eax, 0x1f
lea ecx, [ebp - 0x8fc]
mov dword [ebp - 0x8dc], eax
mov byte [ebp - 4], 0x31
call fcn.00401130
cmp byte [ebp - 0x8dc], 0
jne 0x4b4582
push 4
lea ecx, [ebp - 0x84c]
call fcn.004093c0
lea ecx, [ebp - 0x84c]
call fcn.0040c910
mov byte [ebp - 4], 0x33
lea edx, [ebp - 0x84c]
mov eax, dword [ebp - 0x834]
push edx
push 1
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x38]
call eax
test eax, eax
js 0x4b4577
mov eax, dword [ebp - 0x84c]
lea edx, [ebp - 0x1e4]
mov dword [ebp - 0x1e4], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
push 0xc
lea ecx, [ebp - 0x508]
call fcn.00401e00
lea ecx, [ebp - 0x508]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x340]
mov byte [ebp - 4], 0x34
call fcn.00401e00
lea ecx, [ebp - 0x340]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x514]
mov byte [ebp - 4], 0x35
call fcn.00401e00
lea ecx, [ebp - 0x514]
call fcn.00404bc0
mov esi, 1
mov byte [ebp - 4], 0x36
mov dword [ebp - 0x8dc], esi
cmp dword [ebp - 0x1e4], esi
jl 0x4b4556
push 4
lea ecx, [ebp - 0x830]
mov dword [ebp - 0x85c], 0
call fcn.004093c0
lea ecx, [ebp - 0x830]
call fcn.0040c910
push 3
push esi
lea ecx, [ebp - 0x928]
mov byte [ebp - 4], 0x37
call fcn.004011b0
mov esi, eax
mov byte [ebp - 4], 0x38
lea edx, [ebp - 0x830]
mov ecx, dword [ebp - 0x84c]
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
shr eax, 0x1f
lea ecx, [ebp - 0x928]
mov dword [ebp - 0x8d0], eax
mov byte [ebp - 4], 0x37
call fcn.00401230
cmp byte [ebp - 0x8d0], 0
jne 0x4b452e
mov eax, dword [ebp - 0x830]
lea edx, [ebp - 0x85c]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
test eax, eax
js 0x4b452e
push dword [ebp - 0x85c]
lea ecx, [ebp - 0x508]
call fcn.00405010
push dword [ebp - 0x85c]
mov esi, dword [0x55645c]
call esi
push 4
lea ecx, [ebp - 0x848]
call fcn.004093c0
lea ecx, [ebp - 0x848]
call fcn.0040c910
mov byte [ebp - 4], 0x39
lea edx, [ebp - 0x848]
mov eax, dword [ebp - 0x830]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x4c]
call eax
test eax, eax
js 0x4b4523
push 4
lea ecx, [ebp - 0x844]
call fcn.004093c0
lea ecx, [ebp - 0x844]
call fcn.0040c910
mov byte [ebp - 4], 0x3a
lea edx, [ebp - 0x844]
mov eax, dword [ebp - 0x848]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x44]
call eax
test eax, eax
js 0x4b4518
mov eax, dword [ebp - 0x844]
lea edx, [ebp - 0x1e0]
mov dword [ebp - 0x1e0], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
mov edi, 1
cmp dword [ebp - 0x1e0], edi
jl 0x4b4518
nop dword [eax]
push 4
lea ecx, [ebp - 0x828]
call fcn.004093c0
lea ecx, [ebp - 0x828]
call fcn.0040c910
mov byte [ebp - 4], 0x3b
lea edx, [ebp - 0x828]
mov eax, dword [ebp - 0x844]
push edx
push edi
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x20]
call eax
test eax, eax
jns 0x4b42aa
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x3a
call fcn.0051e0b0
jmp 0x4b450b
mov eax, dword [ebp - 0x828]
lea edx, [ebp - 0x448]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x24]
call eax
test eax, eax
jns 0x4b42d7
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x3a
call fcn.0051e0b0
jmp 0x4b450b
cmp dword [ebp - 0x448], 0
je 0x4b42f4
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x3a
call fcn.0051e0b0
jmp 0x4b450b
push 4
lea ecx, [ebp - 0x83c]
call fcn.004093c0
lea ecx, [ebp - 0x83c]
call fcn.0040c910
mov byte [ebp - 4], 0x3c
lea edx, [ebp - 0x83c]
mov eax, dword [ebp - 0x828]
push edx
push str.MbLk
push eax
mov ecx, dword [eax]
mov eax, dword [ecx]
call eax
test eax, eax
jns 0x4b434c
lea ecx, [ebp - 0x83c]
call fcn.0051e0b0
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x3a
call fcn.0051e0b0
jmp 0x4b450b
mov eax, dword [ebp - 0x83c]
lea edx, [ebp - 0x860]
mov dword [ebp - 0x860], 0
mov dword [ebp - 0x864], 0
push edx
mov ecx, dword [eax]
push eax
mov eax, dword [ecx + 0x28]
call eax
mov eax, dword [ebp - 0x83c]
lea edx, [ebp - 0x864]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x30]
call eax
push dword [ebp - 0x860]
lea ecx, [ebp - 0x340]
call fcn.00405010
push dword [ebp - 0x864]
lea ecx, [ebp - 0x514]
call fcn.00405010
mov eax, dword [ebp - 0x860]
test eax, eax
je 0x4b43b9
push eax
call esi
mov eax, dword [ebp - 0x864]
test eax, eax
je 0x4b43c6
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 - 0x514]
call fcn.00405820
push eax
push 0x576604
lea ecx, [ebp - 0x340]
call fcn.00407230
push 0
lea ecx, [ebp - 0x340]
call fcn.00405cb0
lea ecx, [ebp - 0x340]
call fcn.004053c0
cmp eax, 4
jge 0x4b4432
lea ecx, [ebp - 0x83c]
call fcn.0051e0b0
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x3a
call fcn.0051e0b0
jmp 0x4b450b
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051ebf0
cmp dword [eax], esi
jl 0x4b44eb
nop dword [eax]
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405bb0
test al, al
jne 0x4b4494
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x340]
call fcn.00406ef0
test eax, eax
jne 0x4b44a8
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051ebf0
cmp esi, dword [eax]
jle 0x4b4450
jmp 0x4b44eb
lea ecx, [ebp - 0x508]
call fcn.00405820
push eax
lea ecx, [ebp - 0x904]
call fcn.00401080
mov byte [ebp - 4], 0x3d
mov ecx, dword [ebp - 0x834]
push 0
mov esi, dword [ecx]
mov ecx, eax
call fcn.00401190
push eax
push dword [ebp - 0x834]
mov eax, dword [esi + 0x3c]
call eax
lea ecx, [ebp - 0x904]
call fcn.00401130
lea ecx, [ebp - 0x83c]
call fcn.0051e0b0
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x3a
call fcn.0051e0b0
mov esi, dword [0x55645c]
inc edi
cmp edi, dword [ebp - 0x1e0]
jle 0x4b4260
lea ecx, [ebp - 0x844]
call fcn.0051e0b0
lea ecx, [ebp - 0x848]
call fcn.0051e0b0
lea ecx, [ebp - 0x830]
mov byte [ebp - 4], 0x36
call fcn.0051e0b0
mov esi, dword [ebp - 0x8dc]
inc esi
mov dword [ebp - 0x8dc], esi
cmp esi, dword [ebp - 0x1e4]
jle 0x4b4100
lea ecx, [ebp - 0x514]
call fcn.00405360
lea ecx, [ebp - 0x340]
call fcn.00405360
lea ecx, [ebp - 0x508]
call fcn.00405360
lea ecx, [ebp - 0x84c]
call fcn.0051e0b0
lea ecx, [ebp - 0x834]
call fcn.0051e0b0
lea ecx, [ebp - 0x82c]
mov byte [ebp - 4], 0x23
call fcn.0051e0b0
mov edi, dword [ebp - 0x8ec]
xor eax, eax
mov ecx, 0xc
cmp dword [ebp - 0x8f8], eax
setne al
inc eax
add eax, dword [edi + 0x30]
mov dword [ebp - 0x8f0], eax
mov dword [ebp - 0x8dc], eax
mul ecx
mov ecx, 0xffffffff
cmovb eax, ecx
add eax, 4
cmovb eax, ecx
push eax
call fcn.0053905f
add esp, 4
mov dword [ebp - 0x8cc], eax
mov ecx, dword [ebp - 0x8f0]
push fcn.00405360
push fcn.00404bc0
push ecx
mov byte [ebp - 4], 0x3e
mov dword [eax], ecx
add eax, 4
push 0xc
push eax
mov dword [ebp - 0x8d0], eax
call fcn.00539094
mov byte [ebp - 4], 0x23
xor esi, esi
mov eax, dword [edi + 0x30]
test eax, eax
je 0x4b4672
mov eax, dword [ebp - 0x8d0]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x8dc], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58dbd0
push esi
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
mov ecx, dword [ebp - 0x8dc]
push eax
push str.HKU_
call fcn.00405430
add dword [ebp - 0x8dc], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4b4628
mov esi, dword [ebp - 0x8d0]
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 0x58dc28
push dword [ebp - 0x8d8]
lea ecx, [esi + eax*4]
call fcn.00405430
cmp dword [ebp - 0x8f8], 0
je 0x4b46d9
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 0x58dc28
push dword [ebp - 0x8f4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00405430
push 8
lea ecx, [ebp - 0x588]
call fcn.00401750
push esi
lea ecx, [ebp - 0x588]
call fcn.004015d0
mov byte [ebp - 4], 0x3f
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x32
push dword [eax + 0x44]
call fcn.0043b930
cmp dword [ebp - 0x8c8], 0
je 0x4b491a
push 0xc
lea ecx, [ebp - 0x358]
mov dword [ebp - 0x914], 0x580e08
mov dword [ebp - 0x910], 0x58dc80
mov dword [ebp - 0x90c], 0x58dc90
call fcn.00401e00
lea ecx, [ebp - 0x358]
call fcn.00404bc0
cmp dword [ebp - 0x8f0], 0
mov byte [ebp - 4], 0x40
jbe 0x4b490b
nop word [eax + eax]
xor eax, eax
mov dword [ebp - 0x8dc], 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 - 0x914]
mov ecx, esi
call fcn.00405820
push eax
lea ecx, [ebp - 0x118]
call fcn.00405430
push 0
push 0x20019
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040c940
test al, al
je 0x4b48d9
lea ecx, [ebp - 0x20]
call fcn.0040d140
test eax, eax
je 0x4b48d9
lea edi, [eax - 1]
test edi, edi
js 0x4b48d9
lea eax, [ebp - 0x44]
push eax
push edi
lea ecx, [ebp - 0x20]
call fcn.0040d040
test al, al
je 0x4b48ca
lea eax, [ebp - 0x358]
push eax
push dword [ebp - 0x44]
lea ecx, [ebp - 0x20]
call fcn.0040cb10
lea ecx, [ebp - 0x358]
call fcn.004053c0
cmp eax, 4
jl 0x4b48ca
push 0
lea ecx, [ebp - 0x358]
call fcn.00405cb0
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051ebf0
cmp dword [eax], esi
jl 0x4b48ca
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405bb0
test al, al
jne 0x4b4884
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x358]
call fcn.00406ef0
test eax, eax
jne 0x4b4898
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051ebf0
cmp esi, dword [eax]
jle 0x4b4840
jmp 0x4b48ca
push dword [ebp - 0x44]
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040e350
test al, al
jne 0x4b48ca
push dword [ebp - 0x44]
lea ecx, [ebp - 0x118]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040e350
sub edi, 1
jns 0x4b47d4
mov esi, dword [ebp - 0x8d0]
mov eax, dword [ebp - 0x8dc]
inc eax
mov dword [ebp - 0x8dc], eax
cmp eax, 3
jb 0x4b4768
add esi, 0xc
sub dword [ebp - 0x8f0], 1
mov dword [ebp - 0x8d0], esi
jne 0x4b4760
mov edi, dword [ebp - 0x8ec]
lea ecx, [ebp - 0x358]
mov byte [ebp - 4], 0x3f
call fcn.00405360
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x3c
push dword [eax + 0x44]
call fcn.0043b930
cmp dword [ebp - 0x8c8], 0
je 0x4b4a81
xor esi, esi
cmp dword [edi + 0x30], esi
jbe 0x4b4a81
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x490]
call fcn.00405820
push eax
push esi
lea ecx, [edi + 0x10c]
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
push eax
lea ecx, [ebp - 0x118]
call fcn.00405430
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
lea ecx, [ebp - 0x118]
push dword [eax]
push dword [ebp - 0x820]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bee10
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x1f0]
call fcn.00405820
push eax
push esi
lea ecx, [edi + 0x10c]
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
push eax
lea ecx, [ebp - 0x118]
call fcn.00405430
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
lea ecx, [ebp - 0x118]
push dword [eax]
push dword [ebp - 0x820]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bee10
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x4f0]
call fcn.00405820
push eax
push esi
lea ecx, [edi + 0x10c]
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
push eax
lea ecx, [ebp - 0x118]
call fcn.00405430
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
lea ecx, [ebp - 0x118]
push dword [eax]
push dword [ebp - 0x820]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bee10
inc esi
cmp esi, dword [edi + 0x30]
jb 0x4b4942
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
lea ecx, [ebp - 0x52c]
push dword [eax]
push dword [ebp - 0x820]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bee10
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
lea ecx, [ebp - 0x3ac]
push dword [eax]
push dword [ebp - 0x820]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bee10
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x41
push dword [eax + 0x44]
call fcn.0043b930
cmp dword [ebp - 0x8c8], 0
je 0x4b4f3d
xor edi, edi
mov esi, str.HKCR
mov dword [ebp - 0x8d0], edi
nop dword [eax + eax]
cmp edi, 1
jne 0x4b4b12
cmp dword [ebp - 0x8f8], 0
je 0x4b4f37
push 0xc
lea ecx, [ebp - 0x334]
call fcn.00401e00
lea ecx, [ebp - 0x334]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x3dc]
mov byte [ebp - 4], 0x41
call fcn.00401e00
lea ecx, [ebp - 0x3dc]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x40c]
mov byte [ebp - 4], 0x42
call fcn.00401e00
lea ecx, [ebp - 0x40c]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x4e4]
mov byte [ebp - 4], 0x43
call fcn.00401e00
cmp edi, 1
lea ecx, [ebp - 0x4e4]
mov eax, 0x58dca4
push 1
cmovne eax, esi
push eax
call fcn.00404c90
push 4
lea ecx, [ebp - 0x13c]
mov byte [ebp - 4], 0x44
call fcn.004093c0
lea ecx, [ebp - 0x13c]
call fcn.0040c910
push 4
lea ecx, [ebp - 0x18c]
mov byte [ebp - 4], 0x45
call fcn.004093c0
lea ecx, [ebp - 0x18c]
call fcn.0040c910
push 4
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x46
call fcn.004093c0
lea ecx, [ebp - 0x138]
call fcn.0040c910
push 0xc
lea ecx, [ebp - 0x8b4]
mov byte [ebp - 4], 0x47
call fcn.0040c890
lea ecx, [ebp - 0x8b4]
call fcn.0040c8d0
push 0xc
lea ecx, [ebp - 0x8c0]
mov byte [ebp - 4], 0x48
call fcn.0040c890
lea ecx, [ebp - 0x8c0]
call fcn.0040c8d0
push 0
push 0x20019
lea ecx, [ebp - 0x4e4]
mov byte [ebp - 4], 0x49
call fcn.00405820
push eax
lea ecx, [ebp - 0x13c]
call fcn.0040c940
test al, al
je 0x4b4ec0
lea eax, [ebp - 0x8b4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x8dc], esi
call fcn.0040cfc0
test al, al
je 0x4b4ebb
mov eax, dword [ebp - 0x8b4]
test eax, eax
je 0x4b4c79
cmp word [eax], 0x2e
je 0x4b4e93
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58dcc8
push eax
push 0x575ca8
lea ecx, [ebp - 0x4e4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x3dc]
call fcn.00405430
push 0
push 0x20019
lea ecx, [ebp - 0x3dc]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18c]
call fcn.0040c940
test al, al
je 0x4b4e93
lea ecx, [ebp - 0x18c]
call fcn.0040d0e0
test eax, eax
je 0x4b4e93
lea edi, [eax - 1]
test edi, edi
js 0x4b4e93
nop
lea eax, [ebp - 0x8c0]
push eax
push edi
lea ecx, [ebp - 0x13c]
call fcn.0040cfc0
test al, al
je 0x4b4e84
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.Command
push dword [ebp - 0x8c0]
lea ecx, [ebp - 0x3dc]
push 0x575ca8
call fcn.00405820
push eax
lea ecx, [ebp - 0x334]
call fcn.00405430
push 0
push 0x20019
lea ecx, [ebp - 0x334]
call fcn.00405820
push eax
lea ecx, [ebp - 0x138]
call fcn.0040c940
test al, al
je 0x4b4e84
lea eax, [ebp - 0x40c]
push eax
push 0x575cb0
lea ecx, [ebp - 0x138]
call fcn.0040cb10
test al, al
je 0x4b4e84
push 0
lea ecx, [ebp - 0x40c]
call fcn.00405cb0
lea ecx, [ebp - 0x40c]
call fcn.004053c0
cmp eax, 4
jl 0x4b4e84
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051ebf0
cmp dword [eax], esi
jl 0x4b4e84
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405bb0
test al, al
jne 0x4b4e06
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x40c]
call fcn.00406ef0
test eax, eax
jne 0x4b4e1a
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051ebf0
cmp esi, dword [eax]
jle 0x4b4dc2
jmp 0x4b4e84
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x8c0]
lea ecx, [ebp - 0x3dc]
push 0x575ca8
call fcn.00405820
push eax
lea ecx, [ebp - 0x334]
call fcn.00405430
push 0
lea ecx, [ebp - 0x334]
call fcn.00405820
push eax
lea ecx, [ebp - 0x138]
call fcn.0040e350
test al, al
jne 0x4b4e84
push 0
lea ecx, [ebp - 0x334]
call fcn.00405820
push eax
lea ecx, [ebp - 0x138]
call fcn.0040e350
sub edi, 1
jns 0x4b4cf0
mov esi, dword [ebp - 0x8dc]
lea eax, [ebp - 0x8b4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x8dc], esi
call fcn.0040cfc0
test al, al
jne 0x4b4c65
mov edi, dword [ebp - 0x8d0]
mov esi, str.HKCR
lea ecx, [ebp - 0x8c0]
call fcn.00405360
lea ecx, [ebp - 0x8b4]
call fcn.00405360
lea ecx, [ebp - 0x138]
call fcn.0040c980
lea ecx, [ebp - 0x18c]
call fcn.0040c980
lea ecx, [ebp - 0x13c]
call fcn.0040c980
lea ecx, [ebp - 0x4e4]
call fcn.00405360
lea ecx, [ebp - 0x40c]
call fcn.00405360
lea ecx, [ebp - 0x3dc]
call fcn.00405360
lea ecx, [ebp - 0x334]
mov byte [ebp - 4], 0x3f
call fcn.00405360
inc edi
mov dword [ebp - 0x8d0], edi
cmp edi, 2
jl 0x4b4b00
mov edi, dword [ebp - 0x8ec]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x46
push dword [eax + 0x44]
call fcn.0043b930
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
mov esi, dword [eax]
test esi, esi
jle 0x4b5109
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
push eax
call dword [0x5564e4]
test eax, eax
je 0x4b4fc0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00428560
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
push 0xc
lea ecx, [ebp - 0x4d8]
call fcn.00401e00
push esi
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x4d8]
call fcn.00404c90
push esi
lea ecx, [ebp - 0x820]
mov byte [ebp - 4], 0x4a
call fcn.0051e100
lea ecx, [eax + 4]
call fcn.00405820
push eax
call dword [0x5564e4]
lea ecx, [ebp - 0x4d8]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test eax, eax
je 0x4b5045
or dword [ebp - 0x8d4], 2
push 0x58dcd8
jmp 0x4b504a
push 0x58dd44
call fcn.00405820
push eax
push 0x5786d4
lea ecx, [ebp - 0x70]
call fcn.00405430
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x10]
call fcn.004053c0
cmp eax, 0x28
jle 0x4b50b8
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x10]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
test al, al
jne 0x4b50b8
push 0
push esi
lea ecx, [ebp - 0x820]
call fcn.0051e100
lea ecx, [eax + 0x10]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
push esi
lea ecx, [ebp - 0xbc]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.0043a770
inc dword [edi + 0x28]
lea ecx, [ebp - 0x4d8]
inc dword [edi + 0x2c]
mov byte [ebp - 4], 0x3f
call fcn.00405360
dec esi
test esi, esi
jg 0x4b4f64
push 0
push 0x575c8c
lea ecx, [ebp - 0xf4]
call fcn.0041a620
lea ecx, [ebp - 0x588]
call fcn.0051ea80
lea ecx, [ebp - 0x118]
call fcn.00405360
lea ecx, [ebp - 0x820]
mov byte [ebp - 4], 0x1e
call fcn.0051e110
jmp 0x4b5154
push 0
push 0x58dd78
lea ecx, [ebp - 0xf4]
call fcn.0041a620
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa0]
call fcn.0043b8d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa0]
call fcn.00438420
push 0
push 0x58ddc8
lea ecx, [ebp - 0xf4]
call fcn.0041a620
push 8
lea ecx, [ebp - 0x1a0]
call fcn.00401750
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa4]
call fcn.0043a870
push eax
lea ecx, [ebp - 0x1a0]
call fcn.004015d0
mov byte [ebp - 4], 0x4b
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x4b
push dword [eax + 0x44]
call fcn.0043b930
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ab34
push 0x575ca8
lea ecx, [edi + 0x140]
call fcn.00405820
push eax
lea ecx, [ebp - 0x268]
call fcn.00405430
push 1
lea ecx, [ebp - 0x268]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402090
push 0
lea ecx, [ebp - 0x1a0]
call fcn.0051ebf0
push 0
cmp dword [eax], 0
je 0x4b5a2f
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa4]
call fcn.0043b8d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa4]
call fcn.00438420
push 0x58de38
push 0xffffffffffffffff
lea ecx, [edi + 0x930]
call fcn.004404b0
push 0xc
lea ecx, [ebp - 0x244]
call fcn.00401e00
lea ecx, [ebp - 0x244]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x3e8]
mov byte [ebp - 4], 0x4c
call fcn.00401e00
lea ecx, [ebp - 0x3e8]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x4d
call fcn.00401e00
lea ecx, [ebp - 0x154]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x4e
call fcn.00401e00
lea ecx, [ebp - 0x168]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 4], 0x4f
call fcn.00401e00
lea ecx, [ebp - 0x1fc]
call fcn.00404bc0
push 0
lea ecx, [ebp - 0x1a0]
mov byte [ebp - 4], 0x50
call fcn.0051ebf0
mov esi, dword [eax]
mov dword [ebp - 0x8dc], esi
test esi, esi
jle 0x4b5562
nop dword [eax]
push esi
lea ecx, [ebp - 0x1a0]
mov byte [ebp - 0x8c1], 0
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.0043aa90
push esi
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x8d0], eax
call fcn.0051ebf0
mov ecx, dword [edi + 8]
push dword [eax]
push dword [ecx + 0xa4]
mov ecx, dword [edi + 4]
call fcn.0043ae80
test eax, eax
je 0x4b5553
mov eax, dword [eax]
lea ecx, [ebp - 0x10c]
cdq
push edx
push eax
call fcn.004061c0
push 0x575cb0
push 0x58ce44
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0x244]
call fcn.00405010
push 0x575cb0
push 0x58ce60
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0x168]
call fcn.00405010
push 0x575cb0
push 0x58ce74
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0x1fc]
call fcn.00405010
push 0x575cb0
push 0x57b708
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0x3e8]
call fcn.00405010
push esi
lea ecx, [ebp - 0x1a0]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x154]
call fcn.004057e0
lea ecx, [ebp - 0x70]
call fcn.00405370
mov eax, dword [ebp - 0x8d0]
cmp eax, 0xb
jne 0x4b5636
lea ecx, [ebp - 0x244]
call fcn.004053c0
test eax, eax
je 0x4b54ed
lea ecx, [ebp - 0x1fc]
call fcn.00405820
lea ecx, [ebp - 0x244]
mov esi, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4b55b4
mov byte [ebp - 0x8c1], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x168]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x1fc]
call fcn.00405820
push eax
push 0x58def8
lea ecx, [ebp - 0x70]
call fcn.00405430
mov esi, dword [ebp - 0x8dc]
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
mov cl, byte [ebp - 0x8c1]
test cl, cl
je 0x4b5540
push esi
lea ecx, [ebp - 0x1a0]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.0043a770
cmp byte [ebp - 0x8c1], 2
jne 0x4b553a
or dword [ebp - 0x8d4], 2
mov cl, byte [ebp - 0x8c1]
mov esi, dword [ebp - 0x8dc]
xor eax, eax
test cl, cl
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
dec esi
mov dword [ebp - 0x8dc], esi
test esi, esi
jg 0x4b5310
push 0
push 0x575c8c
lea ecx, [ebp - 0xf4]
call fcn.0041a620
lea ecx, [ebp - 0x1fc]
call fcn.00405360
lea ecx, [ebp - 0x168]
call fcn.00405360
lea ecx, [ebp - 0x154]
call fcn.00405360
lea ecx, [ebp - 0x3e8]
call fcn.00405360
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0x4b
call fcn.00405360
jmp 0x4b5a3f
lea ecx, [ebp - 0x1fc]
call fcn.00405820
push eax
lea ecx, [ebp - 0x244]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov byte [ebp - 0x8c1], al
test al, al
jne 0x4b54aa
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x168]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x1fc]
call fcn.00405820
push eax
push 0x58de98
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
jmp 0x4b553a
cmp eax, 0xc
jne 0x4b571e
lea ecx, [ebp - 0x3e8]
call fcn.004053c0
test eax, eax
je 0x4b54ed
lea ecx, [ebp - 0x3e8]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov byte [ebp - 0x8c1], al
cmp al, 1
je 0x4b5690
lea ecx, [ebp - 0x3e8]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov byte [ebp - 0x8c1], al
lea ecx, [ebp - 0x168]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test al, al
jne 0x4b56ce
push 0x58de80
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58df60
jmp 0x4b5617
cmp al, 2
jne 0x4b56f8
push 0x58dfb0
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58dfd8
jmp 0x4b5a10
push 0x58de80
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58e030
jmp 0x4b5a10
cmp eax, 0xd
jne 0x4b57cf
lea ecx, [ebp - 0x154]
call fcn.00405820
mov dl, 1
mov ecx, eax
call fcn.00460ec0
mov byte [ebp - 0x8c1], al
lea ecx, [ebp - 0x168]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test al, al
jne 0x4b577f
push 0x58de80
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58e088
jmp 0x4b5617
cmp al, 2
jne 0x4b57a9
push 0x58dfb0
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58e0d0
jmp 0x4b5a10
push 0x58de80
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58e120
jmp 0x4b5a10
cmp eax, 0xe
jne 0x4b597e
push 0xc
lea ecx, [ebp - 0x22c]
mov byte [ebp - 0x8c1], 0
call fcn.00401e00
lea ecx, [ebp - 0x22c]
call fcn.00404bc0
push 0
push 0x20019
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0x51
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040c940
test al, al
je 0x4b592d
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x1fc]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040cb10
test al, al
je 0x4b592d
push 0
push 1
push 1
push 0
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
lea ecx, [ebp - 0x22c]
call fcn.00406ef0
test eax, eax
je 0x4b592d
push 0
push 0
push 0x575cb0
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
lea ecx, [ebp - 0x22c]
call fcn.004078d0
push 0
push 0
push 0x575c94
push 0x58e184
lea ecx, [ebp - 0x22c]
call fcn.004078d0
lea ecx, [ebp - 0x22c]
call fcn.004053c0
cmp eax, 3
jge 0x4b58bc
lea ecx, [ebp - 0x22c]
call fcn.00405370
push 0
lea ecx, [ebp - 0x22c]
call fcn.00405820
push eax
push 7
lea ecx, [ebp - 0x1fc]
call fcn.00405820
push eax
lea ecx, [ebp - 0x244]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d630
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b592d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x168]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58e1e0
jmp 0x4b5962
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x168]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58e190
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0x50
call fcn.00405360
jmp 0x4b54ed
cmp eax, 0xf
jne 0x4b54ed
push 0
push 0x575cb0
push 1
lea ecx, [ebp - 0x1fc]
call fcn.00405820
push eax
lea ecx, [ebp - 0x244]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d630
mov byte [ebp - 0x8c1], al
lea ecx, [ebp - 0x168]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
jne 0x4b59f4
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58e238
jmp 0x4b5617
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x154]
call fcn.00405820
push eax
push 0x58e280
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
jmp 0x4b5509
push 0x58dd78
lea ecx, [ebp - 0xf4]
call fcn.0041a620
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa4]
call fcn.0043b8d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa4]
call fcn.00438420
push 0
push 0x58e2d0
lea ecx, [ebp - 0xf4]
call fcn.0041a620
push 8
lea ecx, [ebp - 0xa8]
call fcn.00401750
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa8]
call fcn.0043a870
push eax
lea ecx, [ebp - 0xa8]
call fcn.004015d0
mov byte [ebp - 4], 0x52
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x50
push dword [eax + 0x44]
call fcn.0043b930
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e350
push 0x575ca8
lea ecx, [edi + 0x140]
call fcn.00405820
push eax
lea ecx, [ebp - 0x268]
call fcn.00405430
push 1
lea ecx, [ebp - 0x268]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402090
push 0
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
cmp dword [eax], 0
je 0x4bc2f0
mov ecx, 0x587044
call fcn.00428390
mov ecx, 0x5813d4
call fcn.00428390
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push dword [eax + 0xa8]
call fcn.0043b8d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa8]
call fcn.00438420
push 0x58e378
push 0xffffffffffffffff
lea ecx, [edi + 0x930]
call fcn.004404b0
push 0xc
lea ecx, [ebp - 0xa0]
call fcn.00401e00
lea ecx, [ebp - 0xa0]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x53
call fcn.00401e00
lea ecx, [ebp - 0x88]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x54
call fcn.00401e00
lea ecx, [ebp - 0x94]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x55
call fcn.00401e00
lea ecx, [ebp - 0x7c]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x2e0]
mov byte [ebp - 4], 0x56
call fcn.00401e00
lea ecx, [ebp - 0x2e0]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x57
call fcn.00401e00
lea ecx, [ebp - 0x124]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x58
call fcn.00401e00
lea ecx, [ebp - 0xb4]
call fcn.00404bc0
push 0
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x59
call fcn.0051ebf0
mov eax, dword [eax]
mov dword [ebp - 0x8cc], eax
test eax, eax
jle 0x4bc28e
nop
push eax
lea ecx, [ebp - 0xa8]
mov byte [ebp - 0x8c8], 0
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043aa90
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
mov esi, eax
call fcn.0051ebf0
mov ecx, dword [edi + 8]
push dword [eax]
push dword [ecx + 0xa8]
mov ecx, dword [edi + 4]
call fcn.0043ae80
test eax, eax
je 0x4bc279
mov eax, dword [eax]
lea ecx, [ebp - 0x10c]
cdq
push edx
push eax
call fcn.004061c0
push 0
push 0x58ce44
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405010
push 0
push 0x58ce60
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0x7c]
call fcn.00405010
push 0
push 0x58ce74
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0x2e0]
call fcn.00405010
push 0
push 0x57b708
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0x88]
call fcn.00405010
push 0
push 0x57fc84
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x444]
call fcn.00402430
push eax
lea ecx, [ebp - 0xb4]
call fcn.00405010
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x94]
call fcn.004057e0
lea ecx, [ebp - 0x70]
call fcn.00405370
cmp esi, 0x18
jne 0x4b6016
push 1
push 1
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x94]
call fcn.004053e0
mov ecx, eax
call fcn.00405990
push 0xc
lea ecx, [ebp - 0x2b0]
call fcn.00401e00
push 1
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x2b0]
call fcn.00404c90
push 0xc
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0x5a
call fcn.00401e00
lea ecx, [ebp - 0x250]
call fcn.00404bc0
push 0
push 0
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0x5b
call fcn.00405a70
mov ecx, eax
call fcn.00405a70
lea ecx, [ebp - 0x94]
call fcn.00405bb0
test al, al
jne 0x4b5ff7
lea ecx, [ebp - 0x2b0]
call fcn.00405bb0
test al, al
jne 0x4b5ff7
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58e3c8
lea ecx, [ebp - 0x2b0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x250]
call fcn.00405430
lea ecx, [ebp - 0x250]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040de30
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58e410
lea ecx, [ebp - 0x2b0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x250]
call fcn.00405430
lea ecx, [ebp - 0x250]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040de30
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e470
push 0x58e4b8
lea ecx, [ebp - 0x2b0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x250]
call fcn.00405430
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
lea ecx, [ebp - 0x250]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d560
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040de30
lea ecx, [ebp - 0xa0]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00410020
mov byte [ebp - 0x8c1], al
lea ecx, [ebp - 0x94]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x575c8c
test al, al
je 0x4b5fad
call fcn.00405820
push eax
push 0x58e538
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4b5fe6
call fcn.00405820
push eax
push 0x58e590
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
xor eax, eax
cmp byte [ebp - 0x8c1], al
sete al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
lea ecx, [ebp - 0x250]
call fcn.00405360
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x1a
jne 0x4b699b
push 0x58e5f4
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b61bc
lea ecx, [ebp - 0xa0]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4b606a
mov byte [ebp - 0x8c8], 1
push 1
push 0x58e730
lea ecx, [ebp - 0x70]
call fcn.004053e0
jmp 0x4b6944
push 0xc
lea ecx, [ebp - 0x25c]
call fcn.00401e00
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x25c]
call fcn.00404be0
push 0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x5c
call fcn.00405a70
lea ecx, [ebp - 0x25c]
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
shr eax, 0x1f
lea ecx, [ebp - 0xa0]
push 0
xor al, 1
push 0x58e620
mov dword [ebp - 0x8c8], eax
call fcn.00405820
push eax
lea ecx, [ebp - 0x25c]
call fcn.00405430
lea ecx, [ebp - 0x25c]
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e668
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x25c]
call fcn.00405430
lea ecx, [ebp - 0x25c]
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e470
push 0x58e4b8
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x25c]
call fcn.00405430
lea ecx, [ebp - 0x25c]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00410180
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x59
call fcn.00405360
cmp byte [ebp - 0x8c8], 0
jne 0x4b6056
push 1
push 0x58e6c8
jmp 0x4b64f7
push 0x58e7a0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b63e4
lea ecx, [ebp - 0xa0]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4b6207
mov byte [ebp - 0x8c8], 1
push 1
push 0x58e848
lea ecx, [ebp - 0x70]
call fcn.004053e0
jmp 0x4b6944
push 0xc
lea ecx, [ebp - 0x198]
call fcn.00401e00
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x198]
call fcn.00404be0
push 0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x5d
call fcn.00405a70
lea ecx, [ebp - 0x198]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
shr eax, 0x1f
lea ecx, [ebp - 0xa0]
push 0
xor al, 1
push 0x5870c8
mov byte [ebp - 0x8c8], al
call fcn.00405820
push eax
lea ecx, [ebp - 0x198]
call fcn.00405430
lea ecx, [ebp - 0x198]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x587100
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x198]
call fcn.00405430
lea ecx, [ebp - 0x198]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58711c
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x198]
call fcn.00405430
lea ecx, [ebp - 0x198]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x587134
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x198]
call fcn.00405430
lea ecx, [ebp - 0x198]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58715c
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x198]
call fcn.00405430
lea ecx, [ebp - 0x198]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00410180
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x59
call fcn.00405360
cmp byte [ebp - 0x8c8], 0
jne 0x4b61f3
push 1
push 0x58e7d8
jmp 0x4b64f7
push 0x58e8bc
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b646e
lea ecx, [ebp - 0x2e0]
call fcn.00405820
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4b6438
mov byte [ebp - 0x8c8], 1
push 1
push 0x58e960
lea ecx, [ebp - 0x70]
call fcn.004053e0
jmp 0x4b6944
lea ecx, [ebp - 0x2e0]
call fcn.00405820
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b6424
push 1
push 0x58e8f0
jmp 0x4b64f7
push 0x58e9d0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b6527
lea ecx, [ebp - 0x2e0]
call fcn.00405820
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4b64c6
mov byte [ebp - 0x8c8], 1
push 1
push 0x58ea80
lea ecx, [ebp - 0x70]
call fcn.004053e0
jmp 0x4b6944
lea ecx, [ebp - 0x2e0]
call fcn.00405820
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b64b2
push 1
push 0x58ea08
lea ecx, [ebp - 0x70]
call fcn.004053e0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
xor eax, eax
cmp byte [ebp - 0x8c8], al
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
jmp 0x4bc279
push 0x58eafc
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
jne 0x4b67cc
push 0x58eb28
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
jne 0x4b67cc
push 0x58ed38
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b6944
push 4
lea ecx, [ebp - 0x134]
call fcn.004093c0
lea ecx, [ebp - 0x134]
call fcn.0040c910
push 0xc
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x60
call fcn.00401e00
push 1
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x31c]
call fcn.00404c90
push 0xc
lea ecx, [ebp - 0x328]
mov byte [ebp - 4], 0x61
call fcn.00401e00
lea ecx, [ebp - 0x328]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x870]
mov byte [ebp - 4], 0x62
call fcn.0040c890
lea ecx, [ebp - 0x870]
call fcn.0040c8d0
xor esi, esi
mov byte [ebp - 4], 0x63
push esi
push 1
push 0xd
push 1
push 0x575ca8
lea ecx, [ebp - 0x31c]
call fcn.00406ef0
cmp eax, 0xa
jge 0x4b6663
lea ecx, [ebp - 0x870]
call fcn.00405360
lea ecx, [ebp - 0x328]
call fcn.00405360
lea ecx, [ebp - 0x31c]
call fcn.00405360
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 0x59
call fcn.0040c980
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
xor eax, eax
cmp byte [ebp - 0x8c8], al
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
jmp 0x4bc279
push 0
push 0x20019
dec eax
lea ecx, [ebp - 0x31c]
push eax
call fcn.00406c90
mov ecx, eax
call fcn.00405820
push eax
lea ecx, [ebp - 0x134]
call fcn.0040c940
test al, al
je 0x4b6772
lea eax, [ebp - 0x870]
push eax
push 0
lea ecx, [ebp - 0x134]
call fcn.0040cfc0
test al, al
je 0x4b6772
mov edi, esi
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ed70
push dword [ebp - 0x870]
lea ecx, [ebp - 0x31c]
push 0x575ca8
call fcn.00405820
push eax
lea ecx, [ebp - 0x328]
call fcn.00405430
lea ecx, [ebp - 0x328]
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58edb4
push dword [ebp - 0x870]
lea ecx, [ebp - 0x31c]
add esi, eax
push 0x575ca8
call fcn.00405820
push eax
lea ecx, [ebp - 0x328]
call fcn.00405430
lea ecx, [ebp - 0x328]
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.00410180
add esi, eax
lea ecx, [ebp - 0x134]
lea eax, [ebp - 0x870]
inc edi
push eax
push edi
call fcn.0040cfc0
test al, al
jne 0x4b66b0
mov edi, dword [ebp - 0x8ec]
test esi, esi
lea ecx, [ebp - 0x70]
push 1
setg al
mov byte [ebp - 0x8c8], al
test esi, esi
jg 0x4b678d
push 0x58edf0
jmp 0x4b6792
push 0x58ee60
call fcn.004053e0
lea ecx, [ebp - 0x870]
call fcn.00405360
lea ecx, [ebp - 0x328]
call fcn.00405360
lea ecx, [ebp - 0x31c]
call fcn.00405360
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 0x59
call fcn.0040c980
jmp 0x4b6944
push 0xc
lea ecx, [ebp - 0x4c0]
call fcn.00401e00
lea ecx, [ebp - 0x4c0]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x4cc]
mov byte [ebp - 4], 0x5e
call fcn.00401e00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x582160
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
lea ecx, [ebp - 0x4cc]
call fcn.00404d30
push 1
lea ecx, [ebp - 0x4cc]
mov byte [ebp - 4], 0x5f
call fcn.00405820
push eax
lea ecx, [ebp - 0x88]
call fcn.00405820
mov esi, dword [0x5562b0]
push eax
call esi
test eax, eax
je 0x4b68e0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x576600
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
push 0x58eb64
lea ecx, [ebp - 0x3c4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x4c0]
call fcn.00405430
push 1
push 0
lea ecx, [ebp - 0x4c0]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.0041bc60
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
call dword [0x5564e4]
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b68e0
push 0
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
lea ecx, [ebp - 0x4cc]
call fcn.00405820
push eax
call esi
push 0x58eafc
lea ecx, [ebp - 0x94]
call fcn.004050d0
lea ecx, [ebp - 0x70]
push 1
test al, al
je 0x4b6910
cmp byte [ebp - 0x8c8], 0
jne 0x4b6909
push 0x58eb90
jmp 0x4b6925
push 0x58ebf0
jmp 0x4b6925
cmp byte [ebp - 0x8c8], 0
jne 0x4b6920
push 0x58ec58
jmp 0x4b6925
push 0x58ecc8
call fcn.004053e0
lea ecx, [ebp - 0x4cc]
call fcn.00405360
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 4], 0x59
call fcn.00405360
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
cmp byte [ebp - 0x8c8], 0
je 0x4b6985
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
xor eax, eax
cmp byte [ebp - 0x8c8], al
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
jmp 0x4bc279
cmp esi, 0x6f
jne 0x4b6a3a
push 0x5789fc
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004b0ff0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4b6a11
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58eed0
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58ef10
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x70
jne 0x4b6af1
push 0x5789fc
push 0x58ef48
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004b0ff0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4b6abf
call fcn.00405820
push eax
push 0x58ef84
push 0x58ef90
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
jmp 0x4b6ad7
call fcn.00405820
push eax
push 0x58ef84
push 0x58f000
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
inc dword [edi + 0x28]
jmp 0x4bc279
cmp esi, 0x71
jne 0x4b6be0
push 0
push 0x58ce8c
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x88]
call fcn.004066e0
mov ecx, eax
call fcn.004053c0
test eax, eax
je 0x4b6ba1
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x6f]
mov ecx, eax
call fcn.00418a30
test al, al
jne 0x4b6b5c
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x6f]
mov ecx, eax
call fcn.00418a30
test al, al
je 0x4b6ba1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58f068
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58f0c0
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x72
jne 0x4b6e9e
push 0x58f110
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b6d92
push 4
lea ecx, [ebp - 0x16c]
call fcn.004093c0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x16c]
call fcn.0040c920
push 0xc
lea ecx, [ebp - 0x3f4]
mov byte [ebp - 4], 0x64
call fcn.00401e00
lea ecx, [ebp - 0x3f4]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x5dc]
mov byte [ebp - 4], 0x65
call fcn.00401e00
mov esi, dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x5dc]
call fcn.00404c90
lea eax, [ebp - 0x3f4]
mov byte [ebp - 4], 0x66
push eax
push 0x575cb0
lea ecx, [ebp - 0x16c]
call fcn.0040cb10
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b6d38
push 0
push 0
push 0x575cb0
lea ecx, [ebp - 0x5dc]
call fcn.00405820
push eax
lea ecx, [ebp - 0x3f4]
call fcn.004078d0
push 3
lea ecx, [ebp - 0x3f4]
call fcn.00407bb0
push 0
lea ecx, [ebp - 0x3f4]
call fcn.00405820
push eax
push 1
push 0x575cb0
lea ecx, [ebp - 0x16c]
call fcn.0040d1a0
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b6d38
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58f150
jmp 0x4b6d60
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58f1c8
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x5dc]
call fcn.00405360
lea ecx, [ebp - 0x3f4]
call fcn.00405360
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 0x59
call fcn.0040c980
jmp 0x4bbd47
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0x4c
lea ecx, [ebp - 0x6d8]
call fcn.0041dbb0
lea ecx, [ebp - 0x6d8]
call fcn.00410b90
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x67
call fcn.00405820
push eax
lea ecx, [ebp - 0x6d8]
call fcn.00410d30
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b6e59
push 0x575cb0
lea ecx, [ebp - 0x6d8]
call fcn.00410f20
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b6e59
lea ecx, [ebp - 0x6d8]
call fcn.00410f70
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b6e59
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58f230
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x6d8]
jmp 0x4bbd38
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58f280
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x6d8]
jmp 0x4bbd38
cmp esi, 0x74
jne 0x4b71a5
push 0xc
lea ecx, [ebp - 0x400]
call fcn.00401e00
lea ecx, [ebp - 0x400]
call fcn.00404bc0
lea ecx, [ebp - 0x400]
mov byte [ebp - 4], 0x68
call fcn.00405820
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.00410020
test al, al
sete byte [ebp - 0x8c1]
test al, al
je 0x4b6f17
lea ecx, [ebp - 0x400]
call fcn.00405820
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov byte [ebp - 0x8c1], al
push 0x58f2c4
lea ecx, [ebp - 0x400]
call fcn.004050d0
test al, al
je 0x4b6f8e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b6f7f
push 0x58f2e8
call fcn.00405430
push 0x58f364
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
jmp 0x4b7153
push 0x58f390
call fcn.00405430
jmp 0x4b717c
push 0x58f404
lea ecx, [ebp - 0x400]
call fcn.004050d0
test al, al
je 0x4b7076
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b7067
push 0x58f448
call fcn.00405430
push 0x58f4d0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f504
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f540
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f580
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f5c0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f600
jmp 0x4b6f66
push 0x58f640
call fcn.00405430
jmp 0x4b717c
push 0x58f6c0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b714a
push 0xc
lea ecx, [ebp - 0x49c]
call fcn.00401e00
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x49c]
call fcn.00404c90
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x69
call fcn.00405820
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
push eax
lea ecx, [ebp - 0x49c]
push 0x58de88
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b7131
push 0x58f6f0
call fcn.00405430
push 0x58f4d0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
jmp 0x4b713b
push 0x58f760
call fcn.00405430
lea ecx, [ebp - 0x49c]
mov byte [ebp - 4], 0x68
call fcn.00405360
cmp byte [ebp - 0x8c1], 0
je 0x4b717c
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
lea ecx, [ebp - 0x400]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x73
jne 0x4b7592
push 0x58f7c4
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b7272
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x71]
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b7245
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x70]
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b7245
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58f860
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58f7f8
jmp 0x4b73fd
push 0x58f8c0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b733a
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b730d
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b730d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58f940
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58f8e8
jmp 0x4b73fd
push 0x58f990
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b741c
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b73d5
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b73d5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58fa30
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58f9c8
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
jmp 0x4b74b2
push 0x58fa90
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b7497
lea ecx, [ebp - 0xa0]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0xa0]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4b74f8
mov byte [ebp - 0x8c8], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58fac0
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
cmp byte [ebp - 0x8c8], 0
je 0x4b74e8
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
cmp byte [ebp - 0x8c8], 2
jne 0x4b74e8
or dword [ebp - 0x8d4], 2
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8c8], al
jmp 0x4bc273
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b7467
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b7467
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x58fb10
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8c8], al
jmp 0x4bc273
cmp esi, 0x1f
jne 0x4b798f
lea ecx, [ebp - 0xa0]
call fcn.00405bb0
test al, al
jne 0x4bc279
push 0xc
lea ecx, [ebp - 0x34c]
call fcn.00401e00
mov esi, dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x34c]
call fcn.00404c90
push 0x583450
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x6a
call fcn.004050d0
test al, al
jne 0x4b77bc
push 0x58fb5c
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
jne 0x4b77bc
push 0x58fb80
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
jne 0x4b77bc
push 0x58fb98
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b765a
push 0x58fbc0
jmp 0x4b77c1
push 0x58fc1c
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b7678
push 0x58fc50
jmp 0x4b77c1
push 0x58fc9c
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b769c
lea ecx, [ebp - 0x124]
call fcn.00405370
jmp 0x4b77cc
push 0x583514
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b770c
push 4
lea ecx, [ebp - 0x170]
call fcn.004093c0
push 0
push 0x20019
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x170]
call fcn.0040c920
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x6b
push eax
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
lea ecx, [ebp - 0x170]
call fcn.0040cb10
test al, al
jne 0x4b7720
lea ecx, [ebp - 0x170]
call fcn.0040c980
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
push 0
push 0
push 0x575cb0
lea ecx, [ebp - 0x34c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x124]
call fcn.004078d0
push 0
push 0
push 0x575c94
push 0x58e184
lea ecx, [ebp - 0x124]
call fcn.004078d0
lea ecx, [ebp - 0x124]
call fcn.004053c0
dec eax
lea ecx, [ebp - 0x124]
push eax
call fcn.00405330
cmp word [eax], 0xa
jne 0x4b77ab
nop word [eax + eax]
push 1
lea ecx, [ebp - 0x124]
call fcn.00406cd0
lea ecx, [ebp - 0x124]
call fcn.004053c0
dec eax
lea ecx, [ebp - 0x124]
push eax
call fcn.00405330
cmp word [eax], 0xa
je 0x4b7780
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x6a
call fcn.0040c980
jmp 0x4b77cc
push 0x57ac4c
lea ecx, [ebp - 0x124]
call fcn.00405010
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
test al, al
jne 0x4b783c
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x124]
call fcn.00405820
push eax
push 0x58fcd4
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58fce4
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4b7966
lea ecx, [ebp - 0x124]
call fcn.004053c0
test eax, eax
je 0x4b78c8
push 0x583514
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b78c8
push 0
lea ecx, [ebp - 0x124]
call fcn.00405820
push eax
push 7
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d1a0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58fd0c
lea ecx, [ebp - 0x34c]
call fcn.00405820
push eax
push 0x58fd30
jmp 0x4b793a
lea ecx, [ebp - 0x124]
call fcn.004053c0
test eax, eax
je 0x4b7942
push 0
lea ecx, [ebp - 0x124]
call fcn.00405820
push eax
push 1
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d1a0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x124]
call fcn.00405820
push eax
push 0x58fcd4
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58fd60
lea ecx, [ebp - 0x70]
call fcn.00405430
push esi
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x20
jne 0x4b7b7a
lea ecx, [ebp - 0xa0]
call fcn.00405bb0
test al, al
jne 0x4bc279
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
jne 0x4b7a01
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58fd90
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4b7a4e
call fcn.00405820
push eax
push 0x58ef84
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x58fde0
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x587550
lea ecx, [ebp - 0xa0]
call fcn.00407230
push 0
push 0xffffffffffffffff
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040c940
test al, al
je 0x4bc279
push 0
push 0x5875a0
push 1
push 0x57b0a8
lea ecx, [ebp - 0x20]
call fcn.0040d1a0
push 0
push 0x587650
push 1
push 0x587510
lea ecx, [ebp - 0x20]
call fcn.0040d1a0
push 0
push 0x5875b0
push 1
push 0x587638
lea ecx, [ebp - 0x20]
call fcn.0040d1a0
push 0
lea eax, [ebp - 0x454]
mov dword [ebp - 0x454], 1
push eax
push 4
push 0x587698
lea ecx, [ebp - 0x20]
call fcn.0040d1a0
push 0
push 0x5877f0
push 1
push 0x587530
lea ecx, [ebp - 0x20]
call fcn.0040d1a0
push 0
push 0x5876c8
push 1
push 0x587528
lea ecx, [ebp - 0x20]
call fcn.0040d1a0
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405a70
push 0
push 0x587498
push 1
push 0x5874e8
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d3c0
jmp 0x4bc279
cmp esi, 0x21
jne 0x4b81fb
lea ecx, [ebp - 0xb4]
call fcn.00405bb0
test al, al
jne 0x4bc279
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bd310
mov ecx, eax
test ecx, ecx
js 0x4bc279
mov eax, dword [edi + 0x30]
mov dword [ebp - 0x8dc], eax
cmp ecx, eax
jl 0x4b7bca
cmp eax, 1
je 0x4b7bd4
mov esi, dword [edi + 0x104]
jmp 0x4b7be2
mov dword [ebp - 0x8dc], 1
push ecx
lea ecx, [edi + 0x104]
call fcn.0051ea60
mov esi, eax
push 0xc
lea ecx, [ebp - 0xd4]
call fcn.00401e00
lea ecx, [ebp - 0xd4]
call fcn.00404bc0
mov byte [ebp - 4], 0x6c
mov eax, dword [ebp - 0x8dc]
test eax, eax
jle 0x4b7e02
mov edi, eax
nop
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x58fe38
mov ecx, esi
call fcn.00405820
push eax
push str.HKU_
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x58feb0
mov ecx, esi
call fcn.00405820
push eax
push str.HKU_
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x58ff28
mov ecx, esi
call fcn.00405820
push eax
push str.HKU_
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x58ffa0
mov ecx, esi
call fcn.00405820
push eax
push str.HKU_
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x590010
mov ecx, esi
call fcn.00405820
push eax
push str.HKU_
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5900a8
mov ecx, esi
call fcn.00405820
push eax
push str.HKU_
lea ecx, [ebp - 0xd4]
call fcn.00405430
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
add esi, 0xc
sub edi, 1
jne 0x4b7c10
mov edi, dword [ebp - 0x8ec]
mov eax, dword [ebp - 0x8dc]
cmp eax, dword [edi + 0x30]
jl 0x4b7fb5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
mov esi, dword [ebp - 0x8d8]
lea ecx, [ebp - 0xd4]
push eax
push 0x590108
push esi
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x590180
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x5901f8
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x590270
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x5902e0
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590378
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov eax, dword [ebp - 0x8dc]
cmp dword [ebp - 0x8f8], 0
je 0x4b816f
cmp eax, dword [edi + 0x30]
jl 0x4b816f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
mov esi, dword [ebp - 0x8f4]
lea ecx, [ebp - 0xd4]
push eax
push 0x590108
push esi
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x590180
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x5901f8
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x590270
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x5902e0
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
push 0
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590378
push esi
lea ecx, [ebp - 0xd4]
call fcn.00405430
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
lea ecx, [ebp - 0xd4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x5903d8
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
lea ecx, [ebp - 0xd4]
inc dword [edi + 0x28]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x23
jne 0x4b84de
push 0x58f110
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b83ad
push 4
lea ecx, [ebp - 0x174]
call fcn.004093c0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x174]
call fcn.0040c920
push 0xc
lea ecx, [ebp - 0x364]
mov byte [ebp - 4], 0x6d
call fcn.00401e00
lea ecx, [ebp - 0x364]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x5d0]
mov byte [ebp - 4], 0x6e
call fcn.00401e00
mov esi, dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x5d0]
call fcn.00404c90
lea eax, [ebp - 0x364]
mov byte [ebp - 4], 0x6f
push eax
push 0x575cb0
lea ecx, [ebp - 0x174]
call fcn.0040cb10
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b8353
push 0
push 0
push 0x575cb0
lea ecx, [ebp - 0x5d0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x364]
call fcn.004078d0
push 3
lea ecx, [ebp - 0x364]
call fcn.00407bb0
push 0
lea ecx, [ebp - 0x364]
call fcn.00405820
push eax
push 1
push 0x575cb0
lea ecx, [ebp - 0x174]
call fcn.0040d1a0
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b8353
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x590420
jmp 0x4b837b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x590488
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x5d0]
call fcn.00405360
lea ecx, [ebp - 0x364]
call fcn.00405360
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x59
call fcn.0040c980
jmp 0x4bbd47
push 0
push 0x57b708
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x88]
call fcn.004066e0
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0x4c
lea ecx, [ebp - 0x728]
call fcn.0041dbb0
lea ecx, [ebp - 0x728]
call fcn.00410b90
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x70
call fcn.00405820
push eax
lea ecx, [ebp - 0x728]
call fcn.00410d30
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b8499
push 0x575cb0
lea ecx, [ebp - 0x728]
call fcn.00410f20
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b8499
lea ecx, [ebp - 0x728]
call fcn.00410f70
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b8499
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x5904e8
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x728]
jmp 0x4bbd38
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x59052c
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x728]
jmp 0x4bbd38
cmp esi, 0x25
jne 0x4b8904
push 0xc
lea ecx, [ebp - 0x460]
call fcn.00401e00
lea ecx, [ebp - 0x460]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x370]
mov byte [ebp - 4], 0x71
call fcn.00401e00
mov esi, dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x370]
call fcn.00404c90
push 0
push 0x58ce74
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x72
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x460]
call fcn.004066e0
lea ecx, [ebp - 0x460]
call fcn.004053c0
test eax, eax
je 0x4b858a
lea ecx, [ebp - 0x460]
call fcn.00405820
jmp 0x4b858c
xor eax, eax
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0xc
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x8c1], al
call fcn.00401e00
lea ecx, [ebp - 0x148]
call fcn.00404bc0
push 0x583450
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x73
call fcn.004050d0
test al, al
je 0x4b86da
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
push eax
lea ecx, [ebp - 0x370]
push 0x58de88
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b86d0
push 0x590568
call fcn.00405430
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5834e8
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x148]
call fcn.00405430
push 0
push 0x20019
lea ecx, [ebp - 0x148]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040c940
test al, al
je 0x4b8681
lea ecx, [ebp - 0x20]
call fcn.0040d140
test eax, eax
jne 0x4b8895
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x148]
call fcn.00405020
push 0
lea ecx, [ebp - 0x148]
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5905c0
lea ecx, [ebp - 0x148]
call fcn.00407230
push 0x5833e4
jmp 0x4b8881
push 0x5905e0
jmp 0x4b88c0
push 0x590630
lea ecx, [ebp - 0x94]
call fcn.004050d0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4b87c7
call fcn.00405820
push eax
lea ecx, [ebp - 0x370]
push 0x58de88
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b86d0
push 0x590568
call fcn.00405430
lea ecx, [ebp - 0x20]
call fcn.0040d140
test eax, eax
jne 0x4b8895
push 1
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x148]
call fcn.004053e0
push 0
lea ecx, [ebp - 0x148]
call fcn.00405a70
lea ecx, [ebp - 0x148]
call fcn.00405820
mov edx, 0x583450
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4b8895
push 0
lea ecx, [ebp - 0x148]
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5905c0
lea ecx, [ebp - 0x148]
call fcn.00407230
push 0x5833e4
jmp 0x4b8881
call fcn.00405820
push eax
lea ecx, [ebp - 0x94]
push 0x58de88
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b88bb
push 0x590658
call fcn.00405430
push 1
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x148]
call fcn.004053e0
push 0
lea ecx, [ebp - 0x148]
call fcn.00405a70
push 0
push 0x20019
lea ecx, [ebp - 0x148]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040c940
test al, al
je 0x4b8849
lea ecx, [ebp - 0x20]
call fcn.0040d0e0
test eax, eax
jne 0x4b8895
push 0
lea ecx, [ebp - 0x148]
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x583828
lea ecx, [ebp - 0x148]
call fcn.00407230
push 0x583860
lea ecx, [ebp - 0x148]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push esi
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
jmp 0x4b88c5
push 0x590698
call fcn.00405430
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
lea ecx, [ebp - 0x148]
call fcn.00405360
lea ecx, [ebp - 0x370]
call fcn.00405360
lea ecx, [ebp - 0x460]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x24
jne 0x4b8cfc
push 0x5906d0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b89ef
lea ecx, [ebp - 0xa0]
call fcn.00405bb0
test al, al
jne 0x4bc279
push 0x5906e8
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x590700
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x8c1], al
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
add byte [ebp - 0x8c1], al
lea ecx, [ebp - 0xa0]
push 0x590718
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
add al, byte [ebp - 0x8c1]
je 0x4b89d2
call fcn.00405820
push eax
push 0x58ef84
push 0x590738
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
call fcn.00405820
push eax
push 0x58ef84
push 0x590780
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
push 0x5907c0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b8abe
lea ecx, [ebp - 0xa0]
call fcn.00405bb0
test al, al
jne 0x4bc279
push 0x58da98
lea ecx, [ebp - 0x7c]
call fcn.004050d0
lea ecx, [ebp - 0xa0]
test al, al
je 0x4b8a4f
push 0
push 0x57e974
push 1
push 0x57e968
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d3c0
jmp 0x4b8a62
push 0x57e968
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4b8aa1
call fcn.00405820
push eax
push 0x58ef84
push 0x5907d8
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
call fcn.00405820
push eax
push 0x58ef84
push 0x590820
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
push 0x590860
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b8c06
lea ecx, [ebp - 0xa0]
call fcn.00405bb0
test al, al
jne 0x4bc279
push 0xc
lea ecx, [ebp - 0x46c]
call fcn.00401e00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5905c0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x46c]
call fcn.00404d30
push 0x5833e4
lea ecx, [ebp - 0x46c]
mov byte [ebp - 4], 0x74
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5870bc
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x8c1], al
call fcn.00405820
push eax
lea ecx, [ebp - 0x46c]
call fcn.00405430
push 0
lea ecx, [ebp - 0x46c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
add al, byte [ebp - 0x8c1]
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
mov byte [ebp - 0x8c1], al
push 0x58de80
je 0x4b8bc7
call fcn.00405820
push eax
push 0x58ef84
push 0x5908a8
jmp 0x4b8bd7
call fcn.00405820
push eax
push 0x58ef84
push 0x5908e8
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x46c]
mov byte [ebp - 4], 0x59
call fcn.00405360
cmp byte [ebp - 0x8c1], 0
je 0x4bbd74
push dword [ebp - 0x8cc]
jmp 0x4bbd51
push 0x590924
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4bc279
lea ecx, [ebp - 0xa0]
call fcn.00405bb0
test al, al
jne 0x4bc279
lea ecx, [ebp - 0xa0]
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.00410180
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 0x590954
push 0
setg byte [ebp - 0x8c1]
call fcn.00405a70
mov ecx, eax
call fcn.00407230
lea ecx, [ebp - 0xa0]
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.00410180
push 0
push 0
push 0
push 0
push 0
push 0
test eax, eax
lea ecx, [ebp - 0x7c]
push 0
setg al
push 0
push 0x58de80
add al, byte [ebp - 0x8c1]
je 0x4b8cdf
call fcn.00405820
push eax
push 0x58ef84
push 0x590978
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
call fcn.00405820
push eax
push 0x58ef84
push 0x5909c8
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x2a
jne 0x4b8d9b
push 0x5789fc
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004b0ff0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4b8d72
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x590a0c
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x590a4c
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x2b
jne 0x4b8e19
push 0x5789fc
push 0x58ef48
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004b0ff0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4b8dfc
call fcn.00405820
push eax
push 0x58ef84
push 0x590a80
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
call fcn.00405820
push eax
push 0x58ef84
push 0x590af0
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x2c
jne 0x4b8f08
push 0
push 0x58ce8c
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x88]
call fcn.004066e0
mov ecx, eax
call fcn.004053c0
test eax, eax
je 0x4b8ec9
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x2a]
mov ecx, eax
call fcn.00418a30
test al, al
jne 0x4b8e84
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x2a]
mov ecx, eax
call fcn.00418a30
test al, al
je 0x4b8ec9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x590b50
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x590ba8
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x2d
jne 0x4b91c6
push 0x58f110
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b90ba
push 4
lea ecx, [ebp - 0x184]
call fcn.004093c0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x184]
call fcn.0040c920
push 0xc
lea ecx, [ebp - 0x37c]
mov byte [ebp - 4], 0x75
call fcn.00401e00
lea ecx, [ebp - 0x37c]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x594]
mov byte [ebp - 4], 0x76
call fcn.00401e00
mov esi, dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x594]
call fcn.00404c90
lea eax, [ebp - 0x37c]
mov byte [ebp - 4], 0x77
push eax
push 0x575cb0
lea ecx, [ebp - 0x184]
call fcn.0040cb10
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b9060
push 0
push 0
push 0x575cb0
lea ecx, [ebp - 0x594]
call fcn.00405820
push eax
lea ecx, [ebp - 0x37c]
call fcn.004078d0
push 3
lea ecx, [ebp - 0x37c]
call fcn.00407bb0
push 0
lea ecx, [ebp - 0x37c]
call fcn.00405820
push eax
push 1
push 0x575cb0
lea ecx, [ebp - 0x184]
call fcn.0040d1a0
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b9060
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x590bf8
jmp 0x4b9088
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x590c68
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x594]
call fcn.00405360
lea ecx, [ebp - 0x37c]
call fcn.00405360
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0x59
call fcn.0040c980
jmp 0x4bbd47
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0x4c
lea ecx, [ebp - 0x778]
call fcn.0041dbb0
lea ecx, [ebp - 0x778]
call fcn.00410b90
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x78
call fcn.00405820
push eax
lea ecx, [ebp - 0x778]
call fcn.00410d30
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b9181
push 0x575cb0
lea ecx, [ebp - 0x778]
call fcn.00410f20
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b9181
lea ecx, [ebp - 0x778]
call fcn.00410f70
mov byte [ebp - 0x8c1], al
test al, al
je 0x4b9181
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x590cd0
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x778]
jmp 0x4bbd38
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x590d20
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x778]
jmp 0x4bbd38
cmp esi, 0x2f
jne 0x4b94f2
push 0xc
lea ecx, [ebp - 0x310]
call fcn.00401e00
lea ecx, [ebp - 0x310]
call fcn.00404bc0
push 0
push 0x58ce74
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x79
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x310]
call fcn.004066e0
lea ecx, [ebp - 0x310]
call fcn.00405820
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.00410020
test al, al
sete byte [ebp - 0x8c1]
test al, al
je 0x4b9264
lea ecx, [ebp - 0x310]
call fcn.00405820
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov byte [ebp - 0x8c1], al
push 0x58f2c4
lea ecx, [ebp - 0x310]
call fcn.004050d0
test al, al
je 0x4b92db
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b92cc
push 0x590d68
call fcn.00405430
push 0x58f364
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
jmp 0x4b94a0
push 0x590de0
call fcn.00405430
jmp 0x4b94c9
push 0x58f404
lea ecx, [ebp - 0x310]
call fcn.004050d0
test al, al
je 0x4b93c3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b93b4
push 0x590e50
call fcn.00405430
push 0x58f4d0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f504
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f540
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f580
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f5c0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f600
jmp 0x4b92b3
push 0x590ed8
call fcn.00405430
jmp 0x4b94c9
push 0x58f6c0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b9497
push 0xc
lea ecx, [ebp - 0x55c]
call fcn.00401e00
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x55c]
call fcn.00404c90
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x7a
call fcn.00405820
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
push eax
lea ecx, [ebp - 0x55c]
push 0x58de88
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b947e
push 0x590f58
call fcn.00405430
push 0x58f4d0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
jmp 0x4b9488
push 0x590fc8
call fcn.00405430
lea ecx, [ebp - 0x55c]
mov byte [ebp - 4], 0x79
call fcn.00405360
cmp byte [ebp - 0x8c1], 0
je 0x4b94c9
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x2e
jne 0x4b9834
push 0x58f7c4
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b95bf
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x2c]
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b9592
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x2b]
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b9592
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591098
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591030
jmp 0x4b73fd
push 0x58f8c0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b9687
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b965a
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b965a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591150
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x5910f8
jmp 0x4b73fd
push 0x58f990
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b974f
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b9722
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b9722
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591208
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x5911a0
jmp 0x4b73fd
push 0x591268
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b7497
lea ecx, [ebp - 0xa0]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0xa0]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4b97c7
mov byte [ebp - 0x8c8], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591298
jmp 0x4b748f
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b979a
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4b979a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x5912e8
jmp 0x4b7568
cmp esi, 0x33
jne 0x4b993b
push 0x591330
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4b98a4
push 0
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 0x591354
mov ecx, eax
call fcn.004672e0
mov dword [ebp - 0x8c8], eax
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4b98f5
call fcn.00405820
push eax
push 0x58ef84
push 0x591388
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
cmp byte [ebp - 0x8c8], 1
jne 0x4b990a
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8c8], al
jmp 0x4bc273
call fcn.00405820
push eax
push 0x58ef84
push 0x5913d8
jmp 0x4b7568
mov al, byte [ebp - 0x8c8]
mov byte [ebp - 0x8c8], al
cmp al, 2
jne 0x4b74e8
or dword [ebp - 0x8d4], 2
inc dword [edi + 0x28]
mov byte [ebp - 0x8c8], al
xor eax, eax
cmp byte [ebp - 0x8c8], al
jmp 0x4bc273
cmp esi, 0x34
jne 0x4b9b8f
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0x591430
lea ecx, [ebp - 0x94]
call fcn.004050d0
lea ecx, [ebp - 0x88]
test al, al
je 0x4b9a3b
push 0
call fcn.00405820
mov edx, 0x591470
mov ecx, eax
call fcn.004672e0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x8c1], al
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5914b4
lea ecx, [ebp - 0x88]
call fcn.00407230
push 0x5785b4
push 0x5914e0
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004b0ff0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4b9a1a
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x5914f8
jmp 0x4b9b09
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591568
jmp 0x4b9b09
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov byte [ebp - 0x8c1], al
test al, al
jne 0x4b9ad7
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov byte [ebp - 0x8c1], al
test al, al
jne 0x4b9ad7
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591630
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8c1], al
jmp 0x4bc273
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x5915d0
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
cmp byte [ebp - 0x8c1], 1
jne 0x4b9b62
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8c1], al
jmp 0x4bc273
mov al, byte [ebp - 0x8c1]
mov byte [ebp - 0x8c1], al
cmp al, 2
jne 0x4b9b7f
or dword [ebp - 0x8d4], 2
mov byte [ebp - 0x8c1], al
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8c1], al
jmp 0x4bc273
cmp esi, 0x35
jne 0x4b9fdb
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x32]
mov ecx, eax
call fcn.00418a30
xorps xmm0, xmm0
mov byte [ebp - 0x8c1], al
push 0xc
lea ecx, [ebp - 0x304]
mov dword [ebp - 0x874], 0
movups xmmword [ebp - 0x884], xmm0
call fcn.00401e00
lea ecx, [ebp - 0x304]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x568]
mov byte [ebp - 4], 0x7b
call fcn.00401e00
lea ecx, [ebp - 0x568]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 4], 0x7c
call fcn.00401e00
lea ecx, [ebp - 0x1c4]
call fcn.00404bc0
push 0
push 0x58cec4
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x7d
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x1c4]
call fcn.004066e0
lea ecx, [edi + 0x624]
call fcn.00409a50
push 0
push 1
lea ecx, [ebp - 0x1c4]
call fcn.00405820
push eax
lea ecx, [edi + 0x624]
call fcn.00409c40
push 0
push 0
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x8c2], al
call fcn.00405820
lea edx, [esi - 0x34]
mov ecx, eax
call fcn.0040a720
push 0x100
lea ecx, [ebp - 0x1c4]
lea esi, [edi + 0x628]
call fcn.00405820
push eax
mov ecx, esi
call fcn.0041e000
push 0
lea eax, [ebp - 0x608]
mov ecx, esi
push eax
push 0x591688
call fcn.0041e680
test al, al
je 0x4b9d97
lea eax, [ebp - 0x608]
mov ecx, esi
push eax
lea eax, [ebp - 0x884]
push eax
call fcn.0041fe10
test al, al
je 0x4b9d97
lea eax, [ebp - 0x304]
mov ecx, esi
push eax
push 0x591698
lea eax, [ebp - 0x884]
push eax
call fcn.0041f470
test eax, eax
jne 0x4b9d2d
lea eax, [ebp - 0x304]
mov ecx, esi
push eax
push 0x5916b0
lea eax, [ebp - 0x884]
push eax
call fcn.0041f470
test eax, eax
je 0x4b9d7a
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x304]
call fcn.00405280
test al, al
jne 0x4b9d7a
lea eax, [ebp - 0x568]
mov ecx, esi
push eax
push 0x5916bc
lea eax, [ebp - 0x884]
push eax
call fcn.0041f470
lea eax, [ebp - 0x884]
mov ecx, esi
push eax
call fcn.004218b0
test al, al
je 0x4b9d7a
push 0
push 2
mov ecx, esi
call fcn.0041e110
lea eax, [ebp - 0x608]
mov ecx, esi
push eax
lea eax, [ebp - 0x884]
push eax
call fcn.0041fe10
test al, al
jne 0x4b9cf1
cmp byte [ebp - 0x8c2], 0
je 0x4b9dc1
push dword [edi + 0x64c]
lea ecx, [ebp - 0x1c4]
push 0
push 1
call fcn.00405820
push eax
lea ecx, [edi + 0x624]
call fcn.00409fa0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x584120
push 0
lea ecx, [ebp - 0x1c4]
call fcn.00405a70
mov ecx, eax
call fcn.00407230
lea ecx, [edi + 0x624]
call fcn.00409a50
push 0
push 1
lea ecx, [ebp - 0x1c4]
call fcn.00405820
push eax
lea ecx, [edi + 0x624]
call fcn.00409c40
push 0
push 0
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x8c2], al
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.0040a720
push 0x100
lea ecx, [ebp - 0x1c4]
lea esi, [edi + 0x628]
call fcn.00405820
push eax
mov ecx, esi
call fcn.0041e000
push 0
lea eax, [ebp - 0x608]
mov ecx, esi
push eax
push 0x591688
call fcn.0041e680
test al, al
je 0x4b9efa
lea eax, [ebp - 0x608]
mov ecx, esi
push eax
lea eax, [ebp - 0x884]
push eax
call fcn.0041fe10
test al, al
je 0x4b9efa
nop dword [eax + eax]
lea eax, [ebp - 0x304]
mov ecx, esi
push eax
push 0x5916bc
lea eax, [ebp - 0x884]
push eax
call fcn.0041f470
test eax, eax
je 0x4b9ee1
lea eax, [ebp - 0x568]
push eax
lea ecx, [ebp - 0x304]
call fcn.00405280
test al, al
jne 0x4b9ee1
lea eax, [ebp - 0x884]
mov ecx, esi
push eax
call fcn.004218b0
test al, al
je 0x4b9ee1
push 0
push 2
mov ecx, esi
call fcn.0041e110
lea eax, [ebp - 0x608]
mov ecx, esi
push eax
lea eax, [ebp - 0x884]
push eax
call fcn.0041fe10
test al, al
jne 0x4b9e90
cmp byte [ebp - 0x8c2], 0
je 0x4b9f24
push dword [edi + 0x64c]
lea ecx, [ebp - 0x1c4]
push 0
push 1
call fcn.00405820
push eax
lea ecx, [edi + 0x624]
call fcn.00409fa0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
push eax
lea ecx, [ebp - 0x94]
push 0x58de88
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b9f92
push 0x5916c8
call fcn.00405430
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
jmp 0x4b9f9c
push 0x591720
call fcn.00405430
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
lea ecx, [ebp - 0x1c4]
call fcn.00405360
lea ecx, [ebp - 0x568]
call fcn.00405360
lea ecx, [ebp - 0x304]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x37
jne 0x4ba27d
push 0x58f110
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4ba171
push 4
lea ecx, [ebp - 0x180]
call fcn.004093c0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x180]
call fcn.0040c920
push 0xc
lea ecx, [ebp - 0x388]
mov byte [ebp - 4], 0x7e
call fcn.00401e00
lea ecx, [ebp - 0x388]
call fcn.00404bc0
mov byte [ebp - 4], 0x7f
lea ecx, [ebp - 0xa8]
mov esi, dword [ebp - 0x8cc]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x124]
call fcn.004053e0
lea eax, [ebp - 0x388]
push eax
push 0x575cb0
lea ecx, [ebp - 0x180]
call fcn.0040cb10
mov byte [ebp - 0x8c1], al
test al, al
je 0x4ba122
push 0
push 0
push 0x575cb0
lea ecx, [ebp - 0x124]
call fcn.00405820
push eax
lea ecx, [ebp - 0x388]
call fcn.004078d0
push 3
lea ecx, [ebp - 0x388]
call fcn.00407bb0
push 0
lea ecx, [ebp - 0x388]
call fcn.00405820
push eax
push 1
push 0x575cb0
lea ecx, [ebp - 0x180]
call fcn.0040d1a0
mov byte [ebp - 0x8c1], al
test al, al
je 0x4ba122
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591770
jmp 0x4ba14a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x5917e8
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x388]
call fcn.00405360
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x59
call fcn.0040c980
jmp 0x4bbd47
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0x4c
lea ecx, [ebp - 0x7c8]
call fcn.0041dbb0
lea ecx, [ebp - 0x7c8]
call fcn.00410b90
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x80
call fcn.00405820
push eax
lea ecx, [ebp - 0x7c8]
call fcn.00410d30
mov byte [ebp - 0x8c1], al
test al, al
je 0x4ba238
push 0x575cb0
lea ecx, [ebp - 0x7c8]
call fcn.00410f20
mov byte [ebp - 0x8c1], al
test al, al
je 0x4ba238
lea ecx, [ebp - 0x7c8]
call fcn.00410f70
mov byte [ebp - 0x8c1], al
test al, al
je 0x4ba238
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591850
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x7c8]
jmp 0x4bbd38
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x5918a0
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x7c8]
jmp 0x4bbd38
cmp esi, 0x38
jne 0x4ba767
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0x5918e8
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4ba3ee
push 0xc
lea ecx, [ebp - 0x628]
call fcn.00401e00
lea ecx, [ebp - 0x628]
call fcn.00404bc0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x81
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x584154
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.00418a30
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x8c2], al
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591930
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.00418a30
movzx ecx, byte [ebp - 0x8c2]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x8dc], eax
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5914b4
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.00418a30
mov edx, dword [ebp - 0x8dc]
movzx ecx, dl
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x628]
mov byte [ebp - 4], 0x59
mov dword [ebp - 0x8f0], eax
call fcn.00405360
mov eax, dword [ebp - 0x8f0]
jmp 0x4ba68b
push 0x591950
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4ba543
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
push 0xc
lea ecx, [ebp - 0x298]
mov byte [ebp - 0x8f0], al
call fcn.00401e00
lea ecx, [ebp - 0x298]
call fcn.00404bc0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x82
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bd310
test eax, eax
js 0x4ba4a9
cmp eax, dword [edi + 0x30]
jge 0x4ba4a9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x588020
push eax
lea ecx, [edi + 0x104]
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
push eax
push str.HKU_
lea ecx, [ebp - 0x298]
call fcn.00405430
push 0
lea ecx, [ebp - 0x298]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59197c
push dword [ebp - 0x8f4]
lea ecx, [ebp - 0x298]
call fcn.00405430
push 0
lea ecx, [ebp - 0x298]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59197c
push dword [ebp - 0x8d8]
lea ecx, [ebp - 0x298]
call fcn.00405430
push 0
lea ecx, [ebp - 0x298]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040e350
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 0x59
call fcn.00405360
mov eax, dword [ebp - 0x8f0]
jmp 0x4ba68b
push 0x5919b0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4ba656
push 0
lea ecx, [ebp - 0x88]
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58413c
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5919e4
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x8c2], al
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
movzx ecx, byte [ebp - 0x8c2]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x8dc], eax
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5919f0
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov edx, dword [ebp - 0x8dc]
movzx ecx, dl
movzx eax, al
imul eax, ecx
jmp 0x4ba685
push 0x591a14
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8f0], eax
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4ba721
call fcn.00405820
push eax
push 0x58ef84
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591a44
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
test byte [ebp - 0x8f0], 2
je 0x4ba757
or dword [ebp - 0x8d4], 2
xor eax, eax
inc dword [edi + 0x28]
cmp byte [ebp - 0x8f0], al
jmp 0x4bc273
call fcn.00405820
push eax
push 0x58ef84
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591a64
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8f0], al
jmp 0x4bc273
cmp esi, 0x3e
jne 0x4ba806
push 0x5789fc
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004b0ff0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4ba7dd
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591a7c
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591aa8
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x3f
jne 0x4ba8a6
push 0x5789fc
push 0x58ef48
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004b0ff0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4ba878
call fcn.00405820
push eax
push 0x58ef84
push 0x591acc
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b04
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
call fcn.00405820
push eax
push 0x58ef84
push 0x591acc
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b30
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x40
jne 0x4ba9b3
push 0
push 0x58ce8c
lea ecx, [ebp - 0x10c]
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x88]
call fcn.004066e0
mov ecx, eax
call fcn.004053c0
test eax, eax
je 0x4ba967
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x3e]
mov ecx, eax
call fcn.00418a30
test al, al
jne 0x4ba915
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x3e]
mov ecx, eax
call fcn.00418a30
test al, al
je 0x4ba967
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591b50
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b70
lea ecx, [ebp - 0x70]
call fcn.00405430
push dword [ebp - 0x8cc]
jmp 0x4bbd51
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591b50
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591ba0
lea ecx, [ebp - 0x70]
call fcn.00405430
jmp 0x4bbd74
cmp esi, 0x41
jne 0x4baca9
push 0x58f110
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4bab7f
push 4
lea ecx, [ebp - 0x188]
call fcn.004093c0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x188]
call fcn.0040c920
push 0xc
lea ecx, [ebp - 0x394]
mov byte [ebp - 4], 0x83
call fcn.00401e00
lea ecx, [ebp - 0x394]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x5c4]
mov byte [ebp - 4], 0x84
call fcn.00401e00
mov esi, dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x5c4]
call fcn.00404c90
lea eax, [ebp - 0x394]
mov byte [ebp - 4], 0x85
push eax
push 0x575cb0
lea ecx, [ebp - 0x188]
call fcn.0040cb10
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bab18
push 0
push 0
push 0x575cb0
lea ecx, [ebp - 0x5c4]
call fcn.00405820
push eax
lea ecx, [ebp - 0x394]
call fcn.004078d0
push 3
lea ecx, [ebp - 0x394]
call fcn.00407bb0
push 0
lea ecx, [ebp - 0x394]
call fcn.00405820
push eax
push 1
push 0x575cb0
lea ecx, [ebp - 0x188]
call fcn.0040d1a0
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bab18
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591bc8
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b04
jmp 0x4bab4d
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591c08
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b30
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x5c4]
call fcn.00405360
lea ecx, [ebp - 0x394]
call fcn.00405360
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x59
call fcn.0040c980
jmp 0x4bbd47
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0x4c
lea ecx, [ebp - 0x818]
call fcn.0041dbb0
lea ecx, [ebp - 0x818]
call fcn.00410b90
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x86
call fcn.00405820
push eax
lea ecx, [ebp - 0x818]
call fcn.00410d30
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bac57
push 0x575cb0
lea ecx, [ebp - 0x818]
call fcn.00410f20
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bac57
lea ecx, [ebp - 0x818]
call fcn.00410f70
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bac57
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591c44
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b04
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x818]
jmp 0x4bbd38
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591c44
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b30
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x818]
jmp 0x4bbd38
cmp esi, 0x43
jne 0x4bafe9
push 0xc
lea ecx, [ebp - 0x2f8]
call fcn.00401e00
lea ecx, [ebp - 0x2f8]
call fcn.00404bc0
push 0
push 0x58ce74
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x87
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x2f8]
call fcn.004066e0
lea ecx, [ebp - 0x2f8]
call fcn.00405820
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00405820
mov edx, esi
mov ecx, eax
call fcn.00410020
test al, al
sete byte [ebp - 0x8c1]
test al, al
je 0x4bad47
lea ecx, [ebp - 0x2f8]
call fcn.00405820
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov byte [ebp - 0x8c1], al
push 0x58f2c4
lea ecx, [ebp - 0x2f8]
call fcn.004050d0
test al, al
je 0x4badcb
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
push eax
lea ecx, [ebp - 0xb4]
push 0x591c60
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4badbc
push 0x591b70
call fcn.00405430
push 0x58f364
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
jmp 0x4baf97
push 0x591ba0
call fcn.00405430
jmp 0x4bafc0
push 0x58f404
lea ecx, [ebp - 0x2f8]
call fcn.004050d0
test al, al
je 0x4baead
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
push eax
lea ecx, [ebp - 0xb4]
push 0x591ca0
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4badbc
push 0x591b70
call fcn.00405430
push 0x58f4d0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f504
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f540
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f580
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f5c0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
push 0x58f600
jmp 0x4bada3
push 0x58f6c0
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4baf8e
push 0xc
lea ecx, [ebp - 0x574]
call fcn.00401e00
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x574]
call fcn.00404c90
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x88
call fcn.00405820
push 0
push 0
push 0
push 0
push 0
push 0x58de80
push eax
lea ecx, [ebp - 0x574]
push 0x58de88
call fcn.00405820
push eax
lea ecx, [ebp - 0xb4]
push 0x591cf0
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4baf75
push 0x591b70
call fcn.00405430
push 0x58f4d0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
jmp 0x4baf7f
push 0x591ba0
call fcn.00405430
lea ecx, [ebp - 0x574]
mov byte [ebp - 4], 0x87
call fcn.00405360
cmp byte [ebp - 0x8c1], 0
je 0x4bafc0
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
lea ecx, [ebp - 0x2f8]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x42
jne 0x4bb38b
push 0
push 8
push 0x591d24
lea ecx, [ebp - 0x94]
call fcn.00408240
test al, al
je 0x4bb0ce
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x40]
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4bb097
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x3f]
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4bb097
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x591d60
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591dc4
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x591d60
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591d98
jmp 0x4b73fd
push 0
push 8
push 0x591de8
lea ecx, [ebp - 0x94]
call fcn.00408240
test al, al
je 0x4bb1ae
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4bb177
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4bb177
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x591e28
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591dc4
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x591e28
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591d98
jmp 0x4b73fd
push 0
push 8
push 0x591e60
lea ecx, [ebp - 0x94]
call fcn.00408240
test al, al
je 0x4bb28e
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4bb257
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4bb257
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x591e90
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591dc4
jmp 0x4b7568
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x591e90
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591d98
jmp 0x4b73fd
push 0
push 8
push 0x591eb8
lea ecx, [ebp - 0x94]
call fcn.00408240
test al, al
je 0x4b7497
lea ecx, [ebp - 0xa0]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0xa0]
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4bb314
mov byte [ebp - 0x8c8], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591a44
jmp 0x4b748f
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4bb2dd
push 0
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov dword [ebp - 0x8c8], eax
test al, al
jne 0x4bb2dd
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591a64
jmp 0x4b7568
cmp esi, 0x47
jne 0x4bb433
push 0
push 8
push 0x591ee0
lea ecx, [ebp - 0x94]
call fcn.00408240
test al, al
je 0x4b98a4
push 0
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 0x591354
mov ecx, eax
call fcn.004672e0
mov dword [ebp - 0x8c8], eax
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4bb40d
call fcn.00405820
push eax
push 0x58ef84
push 0x591f0c
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591d98
jmp 0x4b989c
call fcn.00405820
push eax
push 0x58ef84
push 0x591f24
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591dc4
jmp 0x4b7568
cmp esi, 0x48
jne 0x4bb619
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0
push 8
push 0x591f4c
lea ecx, [ebp - 0x94]
call fcn.00408240
lea ecx, [ebp - 0x88]
test al, al
je 0x4bb555
push 0
call fcn.00405820
mov edx, 0x591470
mov ecx, eax
call fcn.004672e0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x8c1], al
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5914b4
lea ecx, [ebp - 0x88]
call fcn.00407230
push 0x5785b4
push 0x5914e0
lea ecx, [ebp - 0x88]
call fcn.00405820
push eax
mov ecx, edi
call fcn.004b0ff0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4bb523
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591f84
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b70
jmp 0x4b9b09
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591f84
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591ba0
jmp 0x4b9b09
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov byte [ebp - 0x8c1], al
test al, al
jne 0x4bb5d5
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov byte [ebp - 0x8c1], al
test al, al
jne 0x4bb5d5
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591fbc
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591ba0
jmp 0x4b9aad
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591fbc
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b70
jmp 0x4b9b09
cmp esi, 0x49
jne 0x4bba78
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x46]
mov ecx, eax
call fcn.00418a30
xorps xmm0, xmm0
mov byte [ebp - 0x8c1], al
push 0xc
lea ecx, [ebp - 0x2ec]
mov dword [ebp - 0x888], 0
movups xmmword [ebp - 0x898], xmm0
call fcn.00401e00
lea ecx, [ebp - 0x2ec]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x580]
mov byte [ebp - 4], 0x89
call fcn.00401e00
lea ecx, [ebp - 0x580]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 4], 0x8a
call fcn.00401e00
lea ecx, [ebp - 0x1d0]
call fcn.00404bc0
push 0
push 0x58cec4
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x8b
call fcn.00405820
push eax
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x1d0]
call fcn.004066e0
lea ecx, [edi + 0x624]
call fcn.00409a50
push 0
push 1
lea ecx, [ebp - 0x1d0]
call fcn.00405820
push eax
lea ecx, [edi + 0x624]
call fcn.00409c40
push 0
push 0
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x8c2], al
call fcn.00405820
lea edx, [esi - 0x48]
mov ecx, eax
call fcn.0040a720
push 0x100
lea ecx, [ebp - 0x1d0]
lea esi, [edi + 0x628]
call fcn.00405820
push eax
mov ecx, esi
call fcn.0041e000
push 0
lea eax, [ebp - 0x61c]
mov ecx, esi
push eax
push 0x591688
call fcn.0041e680
test al, al
je 0x4bb826
lea eax, [ebp - 0x61c]
mov ecx, esi
push eax
lea eax, [ebp - 0x898]
push eax
call fcn.0041fe10
test al, al
je 0x4bb826
nop dword [eax + eax]
lea eax, [ebp - 0x2ec]
mov ecx, esi
push eax
push 0x591698
lea eax, [ebp - 0x898]
push eax
call fcn.0041f470
test eax, eax
jne 0x4bb7bc
lea eax, [ebp - 0x2ec]
mov ecx, esi
push eax
push 0x5916b0
lea eax, [ebp - 0x898]
push eax
call fcn.0041f470
test eax, eax
je 0x4bb809
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00405280
test al, al
jne 0x4bb809
lea eax, [ebp - 0x580]
mov ecx, esi
push eax
push 0x5916bc
lea eax, [ebp - 0x898]
push eax
call fcn.0041f470
lea eax, [ebp - 0x898]
mov ecx, esi
push eax
call fcn.004218b0
test al, al
je 0x4bb809
push 0
push 2
mov ecx, esi
call fcn.0041e110
lea eax, [ebp - 0x61c]
mov ecx, esi
push eax
lea eax, [ebp - 0x898]
push eax
call fcn.0041fe10
test al, al
jne 0x4bb780
cmp byte [ebp - 0x8c2], 0
je 0x4bb850
push dword [edi + 0x64c]
lea ecx, [ebp - 0x1d0]
push 0
push 1
call fcn.00405820
push eax
lea ecx, [edi + 0x624]
call fcn.00409fa0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x584120
push 0
lea ecx, [ebp - 0x1d0]
call fcn.00405a70
mov ecx, eax
call fcn.00407230
lea ecx, [edi + 0x624]
call fcn.00409a50
push 0
push 1
lea ecx, [ebp - 0x1d0]
call fcn.00405820
push eax
lea ecx, [edi + 0x624]
call fcn.00409c40
push 0
push 0
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x8c2], al
call fcn.00405820
mov edx, 1
mov ecx, eax
call fcn.0040a720
push 0x100
lea ecx, [ebp - 0x1d0]
lea esi, [edi + 0x628]
call fcn.00405820
push eax
mov ecx, esi
call fcn.0041e000
push 0
lea eax, [ebp - 0x61c]
mov ecx, esi
push eax
push 0x591688
call fcn.0041e680
test al, al
je 0x4bb98a
lea eax, [ebp - 0x61c]
mov ecx, esi
push eax
lea eax, [ebp - 0x898]
push eax
call fcn.0041fe10
test al, al
je 0x4bb98a
nop word [eax + eax]
lea eax, [ebp - 0x2ec]
mov ecx, esi
push eax
push 0x5916bc
lea eax, [ebp - 0x898]
push eax
call fcn.0041f470
test eax, eax
je 0x4bb971
lea eax, [ebp - 0x580]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00405280
test al, al
jne 0x4bb971
lea eax, [ebp - 0x898]
mov ecx, esi
push eax
call fcn.004218b0
test al, al
je 0x4bb971
push 0
push 2
mov ecx, esi
call fcn.0041e110
lea eax, [ebp - 0x61c]
mov ecx, esi
push eax
lea eax, [ebp - 0x898]
push eax
call fcn.0041fe10
test al, al
jne 0x4bb920
cmp byte [ebp - 0x8c2], 0
je 0x4bb9b4
push dword [edi + 0x64c]
lea ecx, [ebp - 0x1d0]
push 0
push 1
call fcn.00405820
push eax
lea ecx, [edi + 0x624]
call fcn.00409fa0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58de80
call fcn.00405820
push eax
lea ecx, [ebp - 0x94]
push 0x58de88
call fcn.00405820
push eax
lea ecx, [ebp - 0xb4]
push 0x591fe4
call fcn.00405820
cmp byte [ebp - 0x8c1], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4bba2f
push 0x592000
call fcn.00405430
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
jmp 0x4bba39
push 0x592030
call fcn.00405430
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
lea ecx, [ebp - 0x1d0]
call fcn.00405360
lea ecx, [ebp - 0x580]
call fcn.00405360
lea ecx, [ebp - 0x2ec]
mov byte [ebp - 4], 0x59
call fcn.00405360
jmp 0x4bc279
cmp esi, 0x4b
jne 0x4bbd8e
push 0x58f110
lea ecx, [ebp - 0x94]
call fcn.004050d0
test al, al
je 0x4bbc28
push 4
lea ecx, [ebp - 0x178]
call fcn.004093c0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00405820
push eax
lea ecx, [ebp - 0x178]
call fcn.0040c920
push 0xc
lea ecx, [ebp - 0x3a0]
mov byte [ebp - 4], 0x8c
call fcn.00401e00
lea ecx, [ebp - 0x3a0]
call fcn.00404bc0
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0xa8]
mov esi, dword [ebp - 0x8cc]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0x124]
call fcn.004053e0
lea eax, [ebp - 0x3a0]
push eax
push 0x575cb0
lea ecx, [ebp - 0x178]
call fcn.0040cb10
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bbbcc
push 0
push 0
push 0x575cb0
lea ecx, [ebp - 0x124]
call fcn.00405820
push eax
lea ecx, [ebp - 0x3a0]
call fcn.004078d0
push 3
lea ecx, [ebp - 0x3a0]
call fcn.00407bb0
push 0
lea ecx, [ebp - 0x3a0]
call fcn.00405820
push eax
push 1
push 0x575cb0
lea ecx, [ebp - 0x178]
call fcn.0040d1a0
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bbbcc
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591bc8
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b04
jmp 0x4bbc01
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58ef84
push 0x591bc8
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b30
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x3a0]
call fcn.00405360
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x59
call fcn.0040c980
jmp 0x4bbd47
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0x4c
lea ecx, [ebp - 0x688]
call fcn.0041dbb0
lea ecx, [ebp - 0x688]
call fcn.00410b90
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x8e
call fcn.00405820
push eax
lea ecx, [ebp - 0x688]
call fcn.00410d30
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bbceb
push 0x575cb0
lea ecx, [ebp - 0x688]
call fcn.00410f20
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bbceb
lea ecx, [ebp - 0x688]
call fcn.00410f70
mov byte [ebp - 0x8c1], al
test al, al
je 0x4bbceb
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591c44
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b04
jmp 0x4bbd2a
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0x7c]
call fcn.00405820
push eax
push 0x58de88
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591c44
lea ecx, [ebp - 0xb4]
call fcn.00405820
push eax
push 0x591b30
lea ecx, [ebp - 0x70]
call fcn.00405430
lea ecx, [ebp - 0x688]
mov byte [ebp - 4], 0x59
call fcn.00410fa0
mov esi, dword [ebp - 0x8cc]
cmp byte [ebp - 0x8c1], 0
je 0x4bbd74
push esi
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
inc dword [edi + 0x2c]
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004b13a0
jmp 0x4bc279
cmp esi, 0x4c
jne 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.004053c0
cmp eax, 0xa
jl 0x4bc279
push 0
push 8
push 0x592058
lea ecx, [ebp - 0x94]
call fcn.00408240
test al, al
je 0x4bbf03
push 0xc
lea ecx, [ebp - 0x634]
call fcn.00401e00
lea ecx, [ebp - 0x634]
call fcn.00404bc0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x8f
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x584154
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.00418a30
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x8c2], al
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591930
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.00418a30
movzx ecx, byte [ebp - 0x8c2]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x8dc], eax
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5914b4
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.00418a30
mov edx, dword [ebp - 0x8dc]
movzx ecx, dl
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x634]
mov byte [ebp - 4], 0x59
mov dword [ebp - 0x8d0], eax
call fcn.00405360
mov eax, dword [ebp - 0x8d0]
jmp 0x4bc1aa
push 0
push 8
push 0x59209c
lea ecx, [ebp - 0x94]
call fcn.00408240
test al, al
je 0x4bc05c
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
push 0xc
lea ecx, [ebp - 0x28c]
mov byte [ebp - 0x8d0], al
call fcn.00401e00
lea ecx, [ebp - 0x28c]
call fcn.00404bc0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x90
call fcn.00405820
push eax
mov ecx, edi
call fcn.004bd310
test eax, eax
js 0x4bbfc2
cmp eax, dword [edi + 0x30]
jge 0x4bbfc2
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x588020
push eax
lea ecx, [edi + 0x104]
call fcn.0051ea60
mov ecx, eax
call fcn.00405820
push eax
push str.HKU_
lea ecx, [ebp - 0x28c]
call fcn.00405430
push 0
lea ecx, [ebp - 0x28c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59197c
push dword [ebp - 0x8f4]
lea ecx, [ebp - 0x28c]
call fcn.00405430
push 0
lea ecx, [ebp - 0x28c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040e350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59197c
push dword [ebp - 0x8d8]
lea ecx, [ebp - 0x28c]
call fcn.00405430
push 0
lea ecx, [ebp - 0x28c]
call fcn.00405820
push eax
lea ecx, [ebp - 0x18]
call fcn.0040e350
lea ecx, [ebp - 0x28c]
mov byte [ebp - 4], 0x59
call fcn.00405360
mov eax, dword [ebp - 0x8d0]
jmp 0x4bc1aa
push 0
push 8
push 0x5920c0
lea ecx, [ebp - 0x94]
call fcn.00408240
push 0
test al, al
je 0x4bc173
lea ecx, [ebp - 0x88]
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58413c
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5919e4
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x8c2], al
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
movzx ecx, byte [ebp - 0x8c2]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x8dc], eax
call fcn.00405a70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5919f0
lea ecx, [ebp - 0x88]
call fcn.00407230
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov edx, dword [ebp - 0x8dc]
movzx ecx, dl
movzx eax, al
imul eax, ecx
jmp 0x4bc1a4
push 8
push 0x5920ec
lea ecx, [ebp - 0x94]
call fcn.00408240
test al, al
je 0x4bc279
lea ecx, [ebp - 0x88]
call fcn.00405820
mov edx, 2
mov ecx, eax
call fcn.00418a30
mov dword [ebp - 0x8d0], eax
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
test al, al
je 0x4bc232
call fcn.00405820
push eax
push 0x58ef84
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591a44
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0xa8]
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.0043a770
test byte [ebp - 0x8d0], 2
je 0x4bc268
or dword [ebp - 0x8d4], 2
jmp 0x4bc268
call fcn.00405820
push eax
push 0x58ef84
lea ecx, [ebp - 0x94]
call fcn.00405820
push eax
push 0x591a64
lea ecx, [ebp - 0x70]
call fcn.00405430
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8d0], al
setne al
add dword [edi + 0x2c], eax
mov eax, dword [ebp - 0x8cc]
dec eax
mov dword [ebp - 0x8cc], eax
test eax, eax
jg 0x4b5c40
push 0
push 0x575c8c
lea ecx, [ebp - 0xf4]
call fcn.0041a620
lea ecx, [ebp - 0xb4]
call fcn.00405360
lea ecx, [ebp - 0x124]
call fcn.00405360
lea ecx, [ebp - 0x2e0]
call fcn.00405360
lea ecx, [ebp - 0x7c]
call fcn.00405360
lea ecx, [ebp - 0x94]
call fcn.00405360
lea ecx, [ebp - 0x88]
call fcn.00405360
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x52
call fcn.00405360
jmp 0x4bc302
push 0
push 0x592118
lea ecx, [ebp - 0xf4]
call fcn.0041a620
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.0043b8d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa8]
call fcn.00438420
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0x40]
call fcn.00438420
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x22
push dword [eax + 0x30]
call fcn.00438420
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x186a0
push 0
push 0x592160
push dword [eax + 0x30]
call fcn.00439420
push 0
push 0x5921a8
lea ecx, [ebp - 0xf4]
call fcn.0041a620
push 8
lea ecx, [ebp - 0x15c]
call fcn.00401750
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xb8]
call fcn.0043a870
push eax
lea ecx, [ebp - 0x15c]
call fcn.004015d0
mov byte [ebp - 4], 0x91
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x63
push dword [eax + 0x44]
call fcn.0043b930
push 0
lea ecx, [ebp - 0x15c]
call fcn.0051ebf0
push 0
cmp dword [eax], 0
je 0x4bcfaa
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xb8]
call fcn.0043b8d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xb8]
call fcn.00438420
push 0x592218
push 0xffffffffffffffff
lea ecx, [edi + 0x930]
call fcn.004404b0
push 0xc
lea ecx, [ebp - 0xc8]
call fcn.00401e00
lea ecx, [ebp - 0xc8]
call fcn.00404bc0
push 0xc
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 4], 0x92
call fcn.00401e00
lea ecx, [ebp - 0x1dc]
call fcn.00404bc0
push 0
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x93
call fcn.0051ebf0
mov esi, dword [eax]
mov dword [ebp - 0x8d8], esi
test esi, esi
jle 0x4bc676
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x15c]
mov byte [ebp - 0x8c1], 0
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xb8]
call fcn.0043aa90
push esi
lea ecx, [ebp - 0x15c]
mov dword [ebp - 0x8f4], eax
call fcn.0051ebf0
mov ecx, dword [edi + 8]
push 0
push dword [eax]
push dword [ecx + 0xb8]
mov ecx, dword [edi + 4]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0xc8]
call fcn.004057e0
mov eax, dword [ebp - 0x8f4]
cmp eax, 0x51
jne 0x4bc720
lea ecx, [ebp - 0xc8]
call fcn.00405820
push eax
push 0
call dword [0x5568a8]
lea ecx, [ebp - 0xc8]
mov esi, eax
call fcn.00405820
xor edx, edx
mov ecx, eax
call fcn.00427df0
lea ecx, [ebp - 0xc8]
call fcn.00405820
mov edx, 3
mov ecx, eax
call fcn.00418a30
mov byte [ebp - 0x8c1], al
test esi, esi
je 0x4bc5b6
movsd xmm0, qword [edi + 0x390]
comisd xmm0, xmmword [0x5ab090]
jb 0x4bc5a5
push 0xc
lea ecx, [ebp - 0x5b8]
call fcn.00401e00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x576600
lea ecx, [ebp - 0xc8]
call fcn.00405820
push eax
push 0x59225c
push dword [edi + 0x1b0]
lea ecx, [ebp - 0x5b8]
call fcn.00404d30
push 0
mov byte [ebp - 4], 0x94
lea ecx, [ebp - 0x5b8]
push dword [edi + 0x1b0]
call fcn.00405820
mov ecx, dword [edi + 0x1c7c]
push eax
call fcn.004720c0
lea ecx, [ebp - 0x5b8]
mov byte [ebp - 4], 0x93
call fcn.00405360
mov al, byte [ebp - 0x8c1]
mov esi, dword [ebp - 0x8d4]
or esi, 4
mov dword [ebp - 0x8d4], esi
jmp 0x4bc5bc
mov esi, dword [ebp - 0x8d4]
lea ecx, [ebp - 0xc8]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
cmp al, 2
jne 0x4bc601
push 0x592288
call fcn.00405820
push eax
push 0x5922bc
lea ecx, [ebp - 0x1dc]
call fcn.00405430
or esi, 2
mov dword [ebp - 0x8d4], esi
jmp 0x4bca79
push 0x58de80
test al, al
je 0x4bc625
call fcn.00405820
push eax
push 0x5922f0
lea ecx, [ebp - 0x1dc]
call fcn.00405430
jmp 0x4bca79
call fcn.00405820
push eax
push 0x592340
lea ecx, [ebp - 0x1dc]
call fcn.00405430
mov esi, dword [ebp - 0x8d8]
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8c1], al
mov ecx, edi
setne al
add dword [edi + 0x2c], eax
lea eax, [ebp - 0x1dc]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
dec esi
mov dword [ebp - 0x8d8], esi
test esi, esi
jg 0x4bc460
mov ecx, dword [ebp - 0x15c]
mov eax, 1
mov dword [ebp - 0x8d8], eax
cmp dword [ecx], eax
jl 0x4bcccb
nop
push dword [ecx + eax*4]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xb8]
call fcn.0043aa90
mov ecx, dword [ebp - 0x15c]
mov esi, eax
mov eax, dword [ebp - 0x8d8]
push 0
push dword [ecx + eax*4]
mov ecx, dword [edi + 8]
push dword [ecx + 0xb8]
mov ecx, dword [edi + 4]
call fcn.0043abb0
push eax
lea ecx, [ebp - 0xc8]
call fcn.004057e0
cmp esi, 0x53
jne 0x4bccb0
push 0x592550
lea ecx, [ebp - 0xc8]
xor esi, esi
call fcn.004050d0
test al, al
je 0x4bccfe
mov ecx, dword [edi + 0x1c7c]
push 3
call fcn.004724a0
test edx, edx
jl 0x4bcc59
jg 0x4bc716
test eax, eax
jb 0x4bcc59
mov esi, 1
jmp 0x4bcf4a
cmp eax, 0x52
jne 0x4bcc4b
push 0x18
lea ecx, [ebp - 0x1b8]
call fcn.00402420
push 1
push 0x57a658
lea ecx, [ebp - 0xc8]
call fcn.00405820
push eax
lea ecx, [ebp - 0x1b8]
call fcn.00408bb0
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x95
call fcn.00408ca0
cmp eax, 1
jbe 0x4bc7da
push 4
push 1
push 1
push 0
push str.HKLM
lea ecx, [ebp - 0xc8]
call fcn.00406ef0
test eax, eax
je 0x4bc7da
push 0
push 1
push 1
push 0
push 0x592388
lea ecx, [ebp - 0xc8]
call fcn.00406ef0
test eax, eax
je 0x4bc7da
push 0
push 0x57e974
push 1
push 1
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
push 0
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d630
mov cl, al
mov byte [ebp - 0x8c1], cl
jmp 0x4bcc08
lea ecx, [ebp - 0x1b8]
call fcn.00408ca0
cmp eax, 1
jbe 0x4bc8b7
push 4
push 1
push 1
push 0
push str.HKLM
lea ecx, [ebp - 0xc8]
call fcn.00406ef0
test eax, eax
je 0x4bc8b7
push 0
push 1
push 1
push 0
push 0x592408
lea ecx, [ebp - 0xc8]
call fcn.00406ef0
test eax, eax
je 0x4bc8b7
push 0xc
lea ecx, [ebp - 0x5ac]
call fcn.00401e00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x580de8
push dword [edi + 0x1b0]
lea ecx, [ebp - 0x5ac]
call fcn.00404d30
push 0
lea ecx, [ebp - 0x5ac]
mov byte [ebp - 4], 0x96
call fcn.00405820
push eax
push 1
push 1
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
push 0
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d630
lea ecx, [ebp - 0x5ac]
mov byte [ebp - 0x8c1], al
mov byte [ebp - 4], 0x95
call fcn.00405360
jmp 0x4bcc02
lea ecx, [ebp - 0x1b8]
call fcn.00408ca0
lea ecx, [ebp - 0x1b8]
cmp eax, 1
jne 0x4bc8f1
push 0
call fcn.00408c70
xor edx, edx
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4bc8ed
mov byte [ebp - 0x8c1], 1
jmp 0x4bcc10
push 0
jmp 0x4bc93e
call fcn.00408ca0
lea ecx, [ebp - 0x1b8]
cmp eax, 2
jne 0x4bc961
push 1
call fcn.00408c70
push 0
lea ecx, [ebp - 0x1b8]
mov esi, eax
call fcn.00408c70
mov edx, esi
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4bc930
mov byte [ebp - 0x8c1], 1
jmp 0x4bcc10
push 1
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
push 0
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e350
mov cl, al
mov byte [ebp - 0x8c1], cl
jmp 0x4bcc08
call fcn.00408ca0
lea ecx, [ebp - 0x1b8]
cmp eax, 2
jbe 0x4bcc3d
push 1
call fcn.00408c70
push 0
lea ecx, [ebp - 0x1b8]
mov esi, eax
call fcn.00408c70
mov edx, esi
mov ecx, eax
call fcn.00410020
test al, al
jne 0x4bc9a4
mov byte [ebp - 0x8c1], 1
jmp 0x4bcc10
push 0x10
lea ecx, [ebp - 0x8a8]
call fcn.00401a90
lea ecx, [ebp - 0x8a8]
call fcn.0040c8b0
lea eax, [ebp - 0x8a8]
mov byte [ebp - 4], 0x97
push eax
push 1
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
push 0
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
lea ecx, [ebp - 0x20]
call fcn.0040cad0
mov eax, dword [ebp - 0x8a0]
cmp eax, 1
je 0x4bcaa5
cmp eax, 7
je 0x4bcaa5
lea ecx, [ebp - 0x8a8]
mov byte [ebp - 4], 0x95
call fcn.00405360
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0xc8]
call fcn.00405820
push eax
push 0x5924f8
lea ecx, [ebp - 0x1dc]
call fcn.00405430
mov al, byte [ebp - 0x8c1]
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x93
mov byte [ebp - 0x8c1], al
call fcn.00408c40
cmp byte [ebp - 0x8c1], 0
mov eax, dword [ebp - 0x8d4]
mov dword [ebp - 0x8d4], eax
je 0x4bc63b
mov esi, dword [ebp - 0x8d8]
lea ecx, [ebp - 0x15c]
push esi
call fcn.0051ebf0
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xb8]
call fcn.0043a770
jmp 0x4bc641
push 0xc
lea ecx, [ebp - 0x4b4]
call fcn.00401e00
push 1
push dword [ebp - 0x8a8]
lea ecx, [ebp - 0x4b4]
call fcn.00404c90
push 0xc
lea ecx, [ebp - 0x214]
mov byte [ebp - 4], 0x98
call fcn.00401e00
push 1
push 2
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
lea ecx, [ebp - 0x214]
call fcn.00404c90
push 1
lea edx, [ebp - 0x214]
mov byte [ebp - 4], 0x99
lea ecx, [ebp - 0x900]
call fcn.00408fc0
lea ecx, [ebp - 0x900]
call fcn.00401590
cmp dword [ebp - 0x8a0], 1
lea ecx, [ebp - 0x214]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
jne 0x4bcb53
push 0x585b3c
call fcn.00405820
push eax
push 0x585b48
lea ecx, [ebp - 0x214]
call fcn.00405820
push eax
push 0x585b3c
jmp 0x4bcb74
push 0x585b50
call fcn.00405820
push eax
push 0x575d98
lea ecx, [ebp - 0x214]
call fcn.00405820
push eax
push 0x585b50
lea ecx, [ebp - 0x214]
call fcn.00405430
push 8
push 0
push 0x575cb0
lea ecx, [ebp - 0x214]
call fcn.00405820
push eax
lea ecx, [ebp - 0x4b4]
call fcn.00408840
push 0
lea ecx, [ebp - 0x4b4]
call fcn.00405820
push eax
push dword [ebp - 0x8a0]
lea ecx, [ebp - 0x1b8]
push 1
call fcn.00408c70
push eax
push 0
lea ecx, [ebp - 0x1b8]
call fcn.00408c70
push eax
lea ecx, [ebp - 0x20]
call fcn.0040d630
lea ecx, [ebp - 0x214]
mov byte [ebp - 0x8c1], al
call fcn.00405360
lea ecx, [ebp - 0x4b4]
call fcn.00405360
lea ecx, [ebp - 0x8a8]
mov byte [ebp - 4], 0x95
call fcn.00405360
mov cl, byte [ebp - 0x8c1]
test cl, cl
je 0x4bca12
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0xc8]
call fcn.00405820
push eax
push 0x592490
jmp 0x4bca3a
mov byte [ebp - 4], 0x93
call fcn.00408c40
jmp 0x4bc667
cmp eax, 0x53
je 0x4bc667
jmp 0x4bc641
xor esi, esi
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0xc8]
call fcn.00405820
push eax
push 0x592968
lea ecx, [ebp - 0x1dc]
call fcn.00405430
xor eax, eax
mov ecx, edi
test esi, esi
setg al
add dword [edi + 0x2c], eax
lea eax, [ebp - 0x1dc]
inc dword [edi + 0x28]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004b13a0
mov eax, dword [ebp - 0x8d8]
mov ecx, dword [ebp - 0x15c]
inc eax
mov dword [ebp - 0x8d8], eax
cmp eax, dword [ecx]
jle 0x4bc690
mov eax, dword [ebp - 0x1dc]
test eax, eax
je 0x4bccde
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x91
mov eax, dword [ebp - 0xc8]
test eax, eax
je 0x4bcfba
push eax
call fcn.00538a53
add esp, 4
jmp 0x4bcfba
push 0x592580
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcd24
mov ecx, dword [edi + 0x1c7c]
push 1
call fcn.004a0260
jmp 0x4bcf44
push 0x5925a0
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcd48
mov ecx, dword [edi + 0x1c7c]
call fcn.00479b70
jmp 0x4bcf44
push 0x5925d4
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcd6e
mov ecx, dword [edi + 0x1c7c]
push 2
call fcn.004a26f0
jmp 0x4bcf44
push 0x592604
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcd94
mov ecx, dword [edi + 0x1c7c]
push 1
call fcn.004a26f0
jmp 0x4bcf44
push 0x592630
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcdb8
mov ecx, dword [edi + 0x1c7c]
call fcn.004aa800
jmp 0x4bcf44
push 0x592668
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcddc
mov ecx, dword [edi + 0x1c7c]
call fcn.0047deb0
jmp 0x4bcf44
push 0x5926b0
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bce00
mov ecx, dword [edi + 0x1c7c]
call fcn.0047c9e0
jmp 0x4bcf44
push 0x5926f8
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bce26
mov ecx, dword [edi + 0x1c7c]
push 5
call fcn.004a1290
jmp 0x4bcf44
push 0x592740
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bce4c
mov ecx, dword [edi + 0x1c7c]
push 0
call fcn.004a8ce0
jmp 0x4bcf44
push 0x592778
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bce70
mov ecx, dword [edi + 0x1c7c]
call fcn.004a8c70
jmp 0x4bcf44
push 0x5927c0
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bce96
mov ecx, dword [edi + 0x1c7c]
push 1
call fcn.00476e40
jmp 0x4bcf44
push 0x5927ec
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bceba
mov ecx, dword [edi + 0x1c7c]
call fcn.004893a0
jmp 0x4bcf44
push 0x592820
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcedd
mov ecx, dword [edi + 0x1c7c]
push 3
call fcn.0047c160
jmp 0x4bcf44
push 0x592864
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcf00
mov ecx, dword [edi + 0x1c7c]
push 0
call fcn.0047b800
jmp 0x4bcf44
push 0x5928a0
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcf21
mov ecx, dword [edi + 0x1c7c]
call fcn.0047cf80
jmp 0x4bcf44
push 0x5928e0
lea ecx, [ebp - 0xc8]
call fcn.004050d0
test al, al
je 0x4bcc5b
mov ecx, dword [edi + 0x1c7c]
call fcn.0047d260
mov esi, eax
test esi, esi
jle 0x4bcf77
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58de80
lea ecx, [ebp - 0xc8]
call fcn.00405820
push eax
push 0x592918
jmp 0x4bcc83
je 0x4bcc5b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5929b0
lea ecx, [ebp - 0xc8]
call fcn.00405820
push eax
push 0x5929ec
jmp 0x4bcc83
push 0x58dd78
lea ecx, [ebp - 0xf4]
call fcn.0041a620
mov eax, dword [edi + 0x28]
mov ecx, dword [ebp - 0x8d4]
or ecx, 1
cmp dword [edi + 0x2c], eax
mov eax, dword [edi + 8]
cmovae ecx, dword [ebp - 0x8d4]
push 1
mov dword [ebp - 0x8d8], ecx
push dword [eax + 0xb8]
mov ecx, dword [edi + 4]
call fcn.0043b8d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xb8]
call fcn.00438420
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 2
push dword [eax + 0x40]
call fcn.00438420
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0x30]
call fcn.00438420
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x186a0
push 0
push 0x58a524
push dword [eax + 0x30]
call fcn.00439420
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x64
push dword [eax + 0x44]
call fcn.0043b930
lea ecx, [ebp - 0x450]
call fcn.004244e0
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x450]
call fcn.00424490
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592a18
lea ecx, [ebp - 0x70]
call fcn.004075e0
push 0
lea ecx, [ebp - 0x70]
call fcn.00405820
push eax
lea ecx, [ebp - 0xf4]
call fcn.0041a620
push 0
push 0x592a68
lea ecx, [ebp - 0xf4]
call fcn.0041a620
mov ecx, 0x592ab4
call fcn.004093f0
cdq
lea ecx, [ebp - 0xf4]
mov esi, eax
mov edi, edx
call fcn.00419710
add eax, esi
lea ecx, [ebp - 0x70]
adc edx, edi
push edx
push eax
call fcn.004061c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592ac4
lea ecx, [ebp - 0x70]
call fcn.00407230
push 0
lea ecx, [ebp - 0x70]
call fcn.00405820
push eax
lea ecx, [ebp - 0xf4]
call fcn.0041a620
push 0
lea ecx, [ebp - 0xf4]
call fcn.0041a8f0
mov ecx, dword [ebp - 0x8ec]
push 0x592ae0
push 0x64
add ecx, 0x930
call fcn.004404b0
lea ecx, [ebp - 0x15c]
call fcn.00405360
mov eax, dword [ebp - 0xa8]
test eax, eax
je 0x4bd14e
push eax
call fcn.00538a53
add esp, 4
lea ecx, [ebp - 0x1a0]
call fcn.00405360
lea ecx, [ebp - 0xf4]
call fcn.004023d0
lea ecx, [ebp - 0xbc]
call fcn.00405360
lea ecx, [ebp - 0x444]
call fcn.00401fb0
lea ecx, [ebp - 0x70]
call fcn.00405360
lea ecx, [ebp - 0x10c]
call fcn.00405360
lea ecx, [ebp - 0x268]
call fcn.00405360
push fcn.00405360
push 2
push 0x10
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x17
push eax
call fcn.00538ceb
push fcn.00405360
push 3
push 0xc
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x16
push eax
call fcn.00538ceb
push fcn.0040c980
push 3
push 4
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x15
push eax
call fcn.00538ceb
lea ecx, [ebp - 0x220]
call fcn.00405360
lea ecx, [ebp - 0x52c]
call fcn.00405360
lea ecx, [ebp - 0x3ac]
call fcn.00405360
lea ecx, [ebp - 0x538]
call fcn.00405360
lea ecx, [ebp - 0x5a0]
call fcn.00405360
lea ecx, [ebp - 0x3b8]
call fcn.00405360
lea ecx, [ebp - 0x478]
call fcn.00405360
lea ecx, [ebp - 0x544]
call fcn.00405360
lea ecx, [ebp - 0x4a8]
call fcn.00405360
lea ecx, [ebp - 0x550]
call fcn.00405360
lea ecx, [ebp - 0x3c4]
call fcn.00405360
lea ecx, [ebp - 0x484]
call fcn.00405360
lea ecx, [ebp - 0x520]
call fcn.00405360
lea ecx, [ebp - 0x4fc]
call fcn.00405360
lea ecx, [ebp - 0x3d0]
call fcn.00405360
lea ecx, [ebp - 0x490]
call fcn.00405360
lea ecx, [ebp - 0x4f0]
call fcn.00405360
lea ecx, [ebp - 0x1f0]
call fcn.00405360
lea ecx, [ebp - 0x2d4]
call fcn.00405360
lea ecx, [ebp - 0x280]
call fcn.00405360
lea ecx, [ebp - 0x274]
call fcn.00405360
mov eax, dword [ebp - 0x8d8]
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.00538a45
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret