Function at 0x4af080
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Parse credit card information
Parse pe header

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 0x54fab4
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x944
mov eax, dword [0x5ba200]
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 - 0x8c4], edi
push 0
call dword [0x553890]
xor ecx, ecx
mov dword [ebp - 0x8ac], 0
call fcn.0040ccc0
test eax, eax
je 0x4af0ef
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 4
push dword [eax + 0x3c]
call fcn.00436840
test eax, eax
je 0x4af18e
push 0x58a784
push 0xffffffffffffffb0
lea ecx, [edi + 0x908]
call fcn.0043d5a0
push 0xc
lea ecx, [ebp - 0x5b0]
call fcn.00405e90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58a7bc
lea ecx, [edi + 0x32c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x5b0]
call fcn.00401c10
push 0
push 0
push 0
push 0xc
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 4], 0
call fcn.00402700
mov edx, 0x64
mov ecx, eax
call fcn.004475f0
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 4], 0xffffffff
call fcn.00402240
push 0x58a7e0
push 0xffffffffffffffff
lea ecx, [edi + 0x908]
call fcn.0043d5a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x58a838
push dword [eax + 0x38]
call fcn.00435c20
push 0xc
lea ecx, [ebp - 0x274]
call fcn.00405e90
lea ecx, [ebp - 0x274]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2a4]
mov dword [ebp - 4], 1
call fcn.00405e90
lea ecx, [ebp - 0x2a4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x304]
mov byte [ebp - 4], 2
call fcn.00405e90
lea ecx, [ebp - 0x304]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 4], 3
call fcn.00405e90
lea ecx, [ebp - 0x1fc]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x53c]
mov byte [ebp - 4], 4
call fcn.00405e90
lea ecx, [ebp - 0x53c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x418]
mov byte [ebp - 4], 5
call fcn.00405e90
lea ecx, [ebp - 0x418]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x370]
mov byte [ebp - 4], 6
call fcn.00405e90
lea ecx, [ebp - 0x370]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x548]
mov byte [ebp - 4], 7
call fcn.00405e90
lea ecx, [ebp - 0x548]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x4c4]
mov byte [ebp - 4], 8
call fcn.00405e90
lea ecx, [ebp - 0x4c4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 9
call fcn.00405e90
lea ecx, [ebp - 0x458]
call fcn.00401aa0
mov byte [ebp - 4], 0xa
push 0xc
lea ecx, [ebp - 0x364]
call fcn.00405e90
lea ecx, [ebp - 0x364]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0xb
call fcn.00405e90
lea ecx, [ebp - 0x4d0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x4e8]
mov byte [ebp - 4], 0xc
call fcn.00405e90
lea ecx, [ebp - 0x4e8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x4f4]
mov byte [ebp - 4], 0xd
call fcn.00405e90
lea ecx, [ebp - 0x4f4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x44c]
mov byte [ebp - 4], 0xe
call fcn.00405e90
lea ecx, [ebp - 0x44c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x358]
mov byte [ebp - 4], 0xf
call fcn.00405e90
lea ecx, [ebp - 0x358]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x55c]
mov byte [ebp - 4], 0x10
call fcn.00405e90
lea ecx, [ebp - 0x55c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x500]
mov byte [ebp - 4], 0x11
call fcn.00405e90
lea ecx, [ebp - 0x500]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x12
call fcn.00405e90
lea ecx, [ebp - 0x34c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x50c]
mov byte [ebp - 4], 0x13
call fcn.00405e90
lea ecx, [ebp - 0x50c]
call fcn.00401aa0
mov byte [ebp - 4], 0x14
call dword [0x553414]
mov ecx, eax
call fcn.00419590
mov ecx, eax
mov edx, str.HKLM
test ecx, ecx
mov dword [ebp - 0x8d0], ecx
mov eax, str.HKLM64
cmove eax, edx
mov edx, 0x572c78
mov dword [ebp - 0x8b0], eax
mov eax, str.HKLM32
push 0
push 0
cmove eax, edx
lea ecx, [ebp - 0x274]
push 0x104
mov dword [ebp - 0x8cc], eax
call fcn.00402cb0
mov esi, dword [0x5534bc]
push eax
push 1
push dword [edi + 0x38]
push 0x1a
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x2a4]
call fcn.00402cb0
push eax
push 1
push dword [edi + 0x38]
push 0x1c
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x1fc]
call fcn.00402cb0
push eax
push 1
push dword [edi + 0x38]
push 2
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x418]
call fcn.00402cb0
push eax
push 1
push dword [edi + 0x38]
push 0
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x44c]
call fcn.00402cb0
push eax
push 1
push dword [edi + 0x38]
push 0x23
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x548]
call fcn.00402cb0
push eax
push 1
push dword [edi + 0x38]
push 7
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x4c4]
call fcn.00402cb0
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 - 0x370]
call fcn.00402cb0
push eax
push 0x58a858
push dword [edi + 0x38]
call dword [0x5536ac]
push 0x400
lea ecx, [ebp - 0x370]
call fcn.00402700
push eax
lea ecx, [ebp - 0x370]
call fcn.00402700
push eax
call dword [0x553418]
push 0x104
push 0
push 0
push 0x104
lea ecx, [ebp - 0x458]
call fcn.00402cb0
push eax
call dword [0x553358]
cmp dword [ebp - 0x8d0], 0
je 0x4af5e1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x57a2cc
lea ecx, [ebp - 0x458]
call fcn.00402700
push eax
lea ecx, [ebp - 0x364]
call fcn.00402310
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58a868
lea ecx, [ebp - 0x458]
call fcn.00402700
push eax
lea ecx, [ebp - 0x4d0]
call fcn.00402310
jmp 0x4af613
push 0x104
push 0
push 0
push 0x104
lea ecx, [ebp - 0x364]
call fcn.00402cb0
push eax
call dword [0x5533b0]
lea eax, [ebp - 0x364]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.00401f00
push dword [ebp - 0x8d0]
lea edx, [ebp - 0x4f4]
lea ecx, [ebp - 0x4e8]
call fcn.0041a640
push 0
push 0
push 0x104
lea ecx, [ebp - 0x358]
call fcn.00402cb0
push eax
push 1
push 0
push 0x2b
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x34c]
call fcn.00402cb0
push eax
push 1
push 0
push 0x17
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x50c]
call fcn.00402cb0
push eax
push 1
push 0
push 0x19
push 0
call esi
push 0
push 0
push 0x104
lea ecx, [ebp - 0x55c]
call fcn.00402cb0
push eax
push 1
push 0
push 0x18
push 0
call esi
push 0xc
lea ecx, [ebp - 0x220]
call fcn.00405e90
lea ecx, [ebp - 0x220]
call fcn.00401aa0
push 0
push 0
push 0x104
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 0x15
call fcn.00402cb0
push eax
push 1
push 0
push 0x28
push 0
call esi
lea ecx, [ebp - 0x220]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x274]
call fcn.00403bf0
lea ecx, [ebp - 0x220]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x2a4]
call fcn.00403bf0
push 1
push 0x58a87c
lea ecx, [ebp - 0x304]
call fcn.004022c0
lea ecx, [ebp - 0x220]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x1fc]
call fcn.00403bf0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x57de68
lea ecx, [ebp - 0x274]
call fcn.00402700
push eax
lea ecx, [ebp - 0x53c]
call fcn.00402310
lea ecx, [ebp - 0x220]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x418]
call fcn.00403bf0
lea ecx, [ebp - 0x220]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x370]
call fcn.00403bf0
lea ecx, [ebp - 0x220]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x548]
call fcn.00403bf0
lea ecx, [ebp - 0x220]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x4c4]
call fcn.00403bf0
push 1
lea ecx, [ebp - 0x358]
call fcn.00402870
lea eax, [ebp - 0x358]
push eax
lea ecx, [ebp - 0x500]
call fcn.00401f00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x572c70
lea ecx, [ebp - 0x4e8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x358]
call fcn.004044a0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x572c70
lea ecx, [ebp - 0x4f4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x500]
call fcn.004044a0
push fcn.00409840
push fcn.004097d0
push 3
push 4
lea eax, [ebp - 0x20]
push eax
call fcn.005365d1
push fcn.00402240
push fcn.00409790
push 3
push 0xc
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x16
push eax
call fcn.005365d1
push fcn.00402240
push fcn.00409770
push 2
push 0x10
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x17
push eax
call fcn.005365d1
push 0xc
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x18
call fcn.00405e90
lea ecx, [ebp - 0x10c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x19
call fcn.00405e90
lea ecx, [ebp - 0x118]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x1a
call fcn.00405e90
lea ecx, [ebp - 0x70]
call fcn.00401aa0
mov byte [ebp - 4], 0x1b
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa0]
call fcn.0042bd90
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push dword [eax + 0xa0]
call fcn.004389a0
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.00437940
push eax
lea ecx, [ebp - 0xbc]
call fcn.004015d0
lea ecx, [ebp - 0x424]
mov byte [ebp - 4], 0x1c
call fcn.00421440
call fcn.004214a0
push edx
push eax
lea ecx, [edi + 0x128]
call fcn.004031b0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58a8a0
lea ecx, [edi + 0x128]
call fcn.00402700
push eax
push 0x58a8ac
lea ecx, [edi + 0x134]
call fcn.00402700
push eax
lea ecx, [edi + 0x128]
call fcn.00402310
push 0x20
lea ecx, [ebp - 0xf4]
call fcn.0041aab0
push 0
push 0x22
lea ecx, [edi + 0x128]
call fcn.00402700
push eax
lea ecx, [ebp - 0xf4]
call fcn.00416540
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x1d
call fcn.00416620
test eax, eax
jne 0x4af9d4
lea ecx, [edi + 0x128]
call fcn.00402250
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58a8c0
lea ecx, [edi + 0x32c]
call fcn.00402700
push eax
push 0x58a904
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0xf4]
call fcn.00417450
push 0
push 0
push 0
push 0
push 0
push 0x58a918
push 0x573190
push 0x577c70
push str.2.8.1.0
push 0x58a92c
lea ecx, [edi + 0x32c]
call fcn.00402700
push eax
push 0x5756bc
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0xf4]
call fcn.00417450
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x424]
call fcn.004213f0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58a944
lea ecx, [ebp - 0x70]
call fcn.00402700
push eax
push 0x58a950
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0xf4]
call fcn.00417450
push 0
push 0x58a980
lea ecx, [ebp - 0xf4]
call fcn.004174b0
mov dword [edi + 0x2c], 0
lea ecx, [ebp - 0xbc]
push 0
mov dword [edi + 0x28], 0
call fcn.0051c410
cmp dword [eax], 0
je 0x4b242e
push 0x58a9e0
push 0xffffffffffffffff
lea ecx, [edi + 0x908]
mov dword [ebp - 0x8a0], 0
call fcn.0043d5a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa0]
call fcn.00435500
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58aa1c
lea ecx, [edi + 0x140]
call fcn.00402700
push eax
lea ecx, [ebp - 0x10c]
call fcn.00402310
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4b2440
push 8
lea ecx, [ebp - 0x7f8]
call fcn.00401750
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051c410
lea ecx, [ebp - 0x7f8]
mov eax, dword [eax]
inc eax
push eax
call fcn.0051b6b0
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x7f8], 0
jne 0x4afba1
lea ecx, [ebp - 0x7f8]
mov byte [ebp - 4], 0x1d
call fcn.0051b640
jmp 0x4b2440
mov esi, 1
lea ecx, [ebp - 0xbc]
push 0
mov dword [ebp - 0x8b4], esi
call fcn.0051c410
cmp dword [eax], esi
jl 0x4afed4
push esi
lea ecx, [ebp - 0xbc]
call fcn.0051c410
push dword [ebp - 0x8b4]
lea ecx, [ebp - 0x7f8]
mov esi, eax
call fcn.0051b630
mov ecx, dword [esi]
mov esi, dword [ebp - 0x8b4]
push esi
mov dword [eax], ecx
lea ecx, [ebp - 0xbc]
call fcn.0051c410
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.00437f50
test eax, eax
je 0x4afeb8
mov eax, dword [eax]
lea ecx, [ebp - 0x118]
cdq
push edx
push eax
call fcn.004030a0
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402cb0
push eax
push 0x572c78
push 0x5786f0
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.004022a0
add dword [ebp - 0x8a0], eax
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x10]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e3c
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x1c]
call fcn.00402cb0
push eax
push 0x572c78
push 0x58aa30
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x80
push 0
push 0
push 0x80
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x28]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e58
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x80
push 0
push 0
push 0x80
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x34]
call fcn.00402cb0
push eax
push 0x572c78
push 0x58aa54
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x80
push 0
push 0
push 0x80
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x4c]
call fcn.00402cb0
push eax
push 0x572c78
push 0x58aa64
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
push esi
lea ecx, [ebp - 0xbc]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 1
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.00437c80
push eax
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x40]
call fcn.004026c0
push 0x58aa7c
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x40]
call fcn.00401fb0
test al, al
je 0x4afe64
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x40]
call fcn.00402250
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
lea ecx, [ebp - 0x7f8]
push esi
test al, al
je 0x4afea2
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.004254a0
jmp 0x4afeb8
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.00424d50
inc esi
lea ecx, [ebp - 0xbc]
push 0
mov dword [ebp - 0x8b4], esi
call fcn.0051c410
cmp esi, dword [eax]
jle 0x4afbc1
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0xa
push dword [eax + 0x44]
call fcn.00438a00
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051c410
mov esi, dword [eax]
mov dword [ebp - 0x8b4], esi
test esi, esi
jle 0x4b07c8
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x4c]
call fcn.004022a0
test eax, eax
je 0x4aff38
push 2
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x4c]
call fcn.00402700
push eax
call dword [0x553880]
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b07b9
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x28]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ba830
push 0x58aa90
push esi
lea ecx, [ebp - 0x7f8]
mov dword [ebp - 0x8a4], eax
call fcn.0051b630
lea ecx, [eax + 0x28]
call fcn.00401fb0
mov byte [ebp - 0x899], al
test al, al
jne 0x4affa7
cmp dword [ebp - 0x8a4], 0
jl 0x4b07b9
push 0xc
lea ecx, [ebp - 0x5a4]
call fcn.00405e90
lea ecx, [ebp - 0x5a4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0x1f
call fcn.00405e90
lea ecx, [ebp - 0x100]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x13c]
mov byte [ebp - 4], 0x20
call fcn.00405e90
lea ecx, [ebp - 0x13c]
call fcn.00401aa0
push esi
lea ecx, [ebp - 0x7f8]
mov byte [ebp - 4], 0x21
call fcn.0051b630
lea ecx, [eax + 0x34]
call fcn.004022a0
lea ecx, [ebp - 0x7f8]
test eax, eax
je 0x4b004e
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.0051b630
lea ecx, [eax + 0x34]
call fcn.00402700
push eax
lea ecx, [ebp - 0x100]
call fcn.00402310
jmp 0x4b0096
push esi
call fcn.0051b630
add eax, 4
lea ecx, [ebp - 0x100]
push eax
call fcn.00401f00
push 1
lea ecx, [ebp - 0x100]
call fcn.00402870
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.004040f0
lea ecx, [ebp - 0x100]
call fcn.004022a0
cmp eax, 2
jl 0x4b0794
push 0x58aaa8
lea ecx, [ebp - 0x100]
call fcn.00401fb0
test al, al
jne 0x4b0794
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
add eax, 0x40
lea ecx, [ebp - 0x13c]
push eax
call fcn.00401f00
lea ecx, [ebp - 0x13c]
call fcn.004022a0
cmp eax, 4
jl 0x4b0115
push 0x58aa7c
lea ecx, [ebp - 0x13c]
call fcn.00401fb0
test al, al
jne 0x4b0115
push str.Microsoft
lea ecx, [ebp - 0x13c]
call fcn.00401fb0
test al, al
je 0x4b0120
lea ecx, [ebp - 0x13c]
call fcn.00402250
cmp byte [ebp - 0x899], 0
je 0x4b04fb
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x8a8], 0
jbe 0x4b0263
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x274]
call fcn.00402700
push dword [ebp - 0x8a8]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2a4]
call fcn.00402700
push dword [ebp - 0x8a8]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x304]
call fcn.00402700
push dword [ebp - 0x8a8]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x1fc]
call fcn.00402700
push dword [ebp - 0x8a8]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
mov eax, dword [ebp - 0x8a8]
inc eax
mov dword [ebp - 0x8a8], eax
cmp eax, dword [edi + 0x30]
jb 0x4b0141
push 0
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fc]
call fcn.00402700
mov edx, 0x572c70
mov ecx, eax
call fcn.004eda50
push 0
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
lea ecx, [ebp - 0x44c]
call fcn.00402700
mov edx, 0x572c70
mov ecx, eax
call fcn.004eda50
push 0
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
lea ecx, [ebp - 0x34c]
call fcn.00402700
mov edx, 0x572c70
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x13c]
call fcn.004022a0
test eax, eax
je 0x4b0767
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x8a8], 0
jbe 0x4b045b
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x274]
call fcn.00402700
push dword [ebp - 0x8a8]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2a4]
call fcn.00402700
push dword [ebp - 0x8a8]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x304]
call fcn.00402700
push dword [ebp - 0x8a8]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x1fc]
call fcn.00402700
push dword [ebp - 0x8a8]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
mov eax, dword [ebp - 0x8a8]
inc eax
mov dword [ebp - 0x8a8], eax
cmp eax, dword [edi + 0x30]
jb 0x4b0305
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fc]
call fcn.00402700
mov edx, 0x572c70
mov ecx, eax
call fcn.004eda50
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x44c]
call fcn.00402700
mov edx, 0x572c70
mov ecx, eax
call fcn.004eda50
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x34c]
call fcn.00402700
mov edx, 0x572c70
jmp 0x4b0760
cmp dword [ebp - 0x8a4], 0
jl 0x4b0767
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x274]
call fcn.00402700
push dword [ebp - 0x8a4]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2a4]
call fcn.00402700
push dword [ebp - 0x8a4]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x304]
call fcn.00402700
push dword [ebp - 0x8a4]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
push 0
push 0
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x1fc]
call fcn.00402700
push dword [ebp - 0x8a4]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x13c]
call fcn.004022a0
test eax, eax
je 0x4b0767
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x274]
call fcn.00402700
push dword [ebp - 0x8a4]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2a4]
call fcn.00402700
push dword [ebp - 0x8a4]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x304]
call fcn.00402700
push dword [ebp - 0x8a4]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x100]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x13c]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x1fc]
call fcn.00402700
push dword [ebp - 0x8a4]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.004eda50
lea ecx, [ebp - 0x13c]
call fcn.00402240
lea ecx, [ebp - 0x100]
call fcn.00402240
lea ecx, [ebp - 0x5a4]
mov byte [ebp - 4], 0x1e
call fcn.00402240
mov esi, dword [ebp - 0x8b4]
jmp 0x4b07b9
lea ecx, [ebp - 0x13c]
call fcn.00402240
lea ecx, [ebp - 0x100]
call fcn.00402240
lea ecx, [ebp - 0x5a4]
mov byte [ebp - 4], 0x1e
call fcn.00402240
dec esi
mov dword [ebp - 0x8b4], esi
test esi, esi
jg 0x4aff01
push 0xc
lea ecx, [ebp - 0x124]
call fcn.00405e90
lea ecx, [ebp - 0x124]
call fcn.00401aa0
mov byte [ebp - 4], 0x22
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x14
push dword [eax + 0x44]
call fcn.00438a00
cmp dword [ebp - 0x8a0], 0
je 0x4b0a91
push 0
push 0x20019
push 0x58aac0
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x8b8], 0x58aac0
mov dword [ebp - 0x8b4], 0x58aadc
call fcn.00409800
push 0
push 0x20019
push 0x58aadc
lea ecx, [ebp - 0x1c]
call fcn.00409800
push 0xc
lea ecx, [ebp - 0x2b0]
call fcn.00405e90
lea ecx, [ebp - 0x2b0]
call fcn.00401aa0
xor esi, esi
mov byte [ebp - 4], 0x23
mov dword [ebp - 0x8a4], esi
lea ecx, [ebp - 0x20]
add ecx, esi
call fcn.00409fb0
test eax, eax
je 0x4b0a6a
lea edi, [eax - 1]
test edi, edi
js 0x4b0a6a
nop
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x20]
push edi
add ecx, esi
call fcn.00409e90
test al, al
je 0x4b0a61
push 0
mov esi, dword [ebp + esi - 0x8b8]
lea ecx, [ebp - 0x124]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ab10
push dword [ebp - 0x44]
push 0x572c70
push esi
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.00409800
test al, al
je 0x4b0902
lea eax, [ebp - 0x2b0]
push eax
push 0x572c78
lea ecx, [ebp - 0x18]
call fcn.004099d0
test al, al
jne 0x4b09ca
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ab30
push dword [ebp - 0x44]
lea ecx, [ebp - 0x124]
push 0x572c70
push esi
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.00409800
test al, al
je 0x4b0962
lea eax, [ebp - 0x2b0]
push eax
push 0x572c78
lea ecx, [ebp - 0x18]
call fcn.004099d0
test al, al
jne 0x4b09ca
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ab50
push dword [ebp - 0x44]
lea ecx, [ebp - 0x124]
push 0x572c70
push esi
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.00409800
test al, al
je 0x4b0a5b
lea eax, [ebp - 0x2b0]
push eax
push 0x572c78
lea ecx, [ebp - 0x18]
call fcn.004099d0
test al, al
je 0x4b0a5b
push 0
lea ecx, [ebp - 0x2b0]
call fcn.00402b90
lea ecx, [ebp - 0x2b0]
call fcn.004022a0
cmp eax, 4
jl 0x4b0a5b
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051c410
cmp dword [eax], esi
jl 0x4b0a5b
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402a90
test al, al
jne 0x4b0a49
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2b0]
call fcn.00403db0
test eax, eax
jne 0x4b0c9f
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051c410
cmp esi, dword [eax]
jle 0x4b0a01
mov esi, dword [ebp - 0x8a4]
sub edi, 1
jns 0x4b0880
add esi, 4
mov dword [ebp - 0x8a4], esi
cmp esi, 8
jl 0x4b0861
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0x22
call fcn.00402240
mov edi, dword [ebp - 0x8c4]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x1e
push dword [eax + 0x44]
call fcn.00438a00
cmp dword [ebp - 0x8a0], 0
je 0x4b0d82
push 0
push 0x20019
push 0x58ab78
lea ecx, [ebp - 0x20]
call fcn.00409800
lea ecx, [ebp - 0x20]
call fcn.00409fb0
push 0xc
lea ecx, [ebp - 0x250]
mov esi, eax
call fcn.00405e90
lea ecx, [ebp - 0x250]
call fcn.00401aa0
mov byte [ebp - 4], 0x24
test esi, esi
je 0x4b0d73
lea eax, [esi - 1]
mov dword [ebp - 0x8b4], eax
test eax, eax
js 0x4b0d73
mov edi, eax
lea eax, [ebp - 0x44]
push eax
push edi
lea ecx, [ebp - 0x20]
call fcn.00409e90
test al, al
je 0x4b0d64
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 - 0x124]
push 0x572c70
push 0x58ab78
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1c]
call fcn.00409800
lea eax, [ebp - 0x250]
push eax
push 0x57807c
lea ecx, [ebp - 0x1c]
call fcn.004099d0
test al, al
je 0x4b0b89
lea ecx, [ebp - 0x250]
call fcn.004022a0
cmp eax, 4
jge 0x4b0bfa
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x582788
lea ecx, [ebp - 0x124]
call fcn.004040f0
push 0
push 0x20019
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1c]
call fcn.00409800
lea eax, [ebp - 0x250]
push eax
push 0x5827f0
lea ecx, [ebp - 0x1c]
call fcn.004099d0
test al, al
je 0x4b0d64
lea ecx, [ebp - 0x250]
call fcn.004022a0
cmp eax, 4
jl 0x4b0d64
push 0
lea ecx, [ebp - 0x250]
call fcn.00402b90
lea ecx, [ebp - 0x250]
call fcn.004022a0
cmp eax, 4
jl 0x4b0d64
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051c410
cmp dword [eax], esi
jl 0x4b0d64
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402a90
test al, al
jne 0x4b0c88
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x250]
call fcn.00403db0
test eax, eax
jne 0x4b0d0a
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051c410
cmp esi, dword [eax]
jle 0x4b0c40
jmp 0x4b0d64
mov esi, dword [ebp - 0x8a4]
lea ecx, [ebp - 0x124]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x44]
push 0x572c70
push dword [ebp + esi - 0x8b8]
call fcn.00402310
push 0
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.0040b260
test al, al
jne 0x4b0a61
push 0
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.0040b260
jmp 0x4b0a61
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 - 0x124]
push 0x572c70
push 0x58ab78
call fcn.00402310
push 0
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040b260
test al, al
jne 0x4b0d64
push 0
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040b260
sub edi, 1
jns 0x4b0b03
mov edi, dword [ebp - 0x8c4]
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0x22
call fcn.00402240
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x28
push dword [eax + 0x44]
call fcn.00438a00
call fcn.004063d0
cmp dword [ebp - 0x8a0], 0
je 0x4b1882
movsd xmm1, qword [0x5a8080]
comisd xmm1, xmm0
jbe 0x4b117d
push 0xc
lea ecx, [ebp - 0x340]
call fcn.00405e90
lea ecx, [ebp - 0x340]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x214]
mov byte [ebp - 4], 0x25
call fcn.00405e90
lea ecx, [ebp - 0x214]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2d4]
mov byte [ebp - 4], 0x26
call fcn.00405e90
lea ecx, [ebp - 0x2d4]
call fcn.00401aa0
push 4
lea ecx, [ebp - 0x800]
mov byte [ebp - 4], 0x27
call fcn.004062b0
lea ecx, [ebp - 0x800]
call fcn.004097d0
lea eax, [ebp - 0x800]
mov byte [ebp - 4], 0x28
push eax
push 0x5a7f44
push 1
push 0
push 0x5a7f34
call dword [0x55388c]
test eax, eax
js 0x4b1148
push 4
lea ecx, [ebp - 0x818]
call fcn.004062b0
lea ecx, [ebp - 0x818]
call fcn.004097d0
mov byte [ebp - 4], 0x29
lea edx, [ebp - 0x818]
mov eax, dword [ebp - 0x800]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x14]
call eax
test eax, eax
js 0x4b113d
mov eax, dword [ebp - 0x818]
lea edx, [ebp - 0x190]
push edx
mov dword [ebp - 0x190], 0
lea edx, [ebp - 0x828]
push edx
mov ecx, dword [eax]
push 5
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
js 0x4b113d
mov esi, dword [0x5538a4]
nop dword [eax + eax]
mov eax, dword [ebp - 0x190]
test eax, eax
je 0x4b1137
xor edi, edi
test eax, eax
je 0x4b1109
nop dword [eax + eax]
mov eax, dword [ebp - 0x828]
lea ecx, [ebp - 0x340]
push dword [eax + edi*4]
call fcn.00401ef0
mov eax, dword [ebp - 0x828]
push dword [eax + edi*4]
call esi
push 4
lea ecx, [ebp - 0x810]
call fcn.004062b0
lea ecx, [ebp - 0x810]
call fcn.004097d0
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x340]
mov eax, dword [ebp - 0x800]
mov esi, dword [eax]
lea eax, [ebp - 0x810]
push eax
push 0x5a7f74
call fcn.00402700
push eax
push dword [ebp - 0x800]
mov eax, dword [esi + 0x18]
call eax
test eax, eax
js 0x4b10e7
mov eax, dword [ebp - 0x810]
lea edx, [ebp - 0x838]
mov dword [ebp - 0x838], 0
mov dword [ebp - 0x834], 0
push edx
mov ecx, dword [eax]
push eax
mov eax, dword [ecx + 0x84]
call eax
mov eax, dword [ebp - 0x810]
lea edx, [ebp - 0x834]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x8c]
call eax
push dword [ebp - 0x838]
lea ecx, [ebp - 0x214]
call fcn.00401ef0
push dword [ebp - 0x834]
lea ecx, [ebp - 0x2d4]
call fcn.00401ef0
mov eax, dword [ebp - 0x838]
mov esi, dword [0x5538a4]
test eax, eax
je 0x4b0fc7
push eax
call esi
mov eax, dword [ebp - 0x834]
test eax, eax
je 0x4b0fd4
push eax
call esi
lea ecx, [ebp - 0x2d4]
call fcn.004022a0
test eax, eax
je 0x4b1013
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2d4]
call fcn.00402700
push eax
push 0x5735d4
lea ecx, [ebp - 0x214]
call fcn.004040f0
push 0
lea ecx, [ebp - 0x214]
call fcn.00402b90
push 0
push 0
push 0x572c78
push 0x5735d0
lea ecx, [ebp - 0x214]
call fcn.00404790
lea ecx, [ebp - 0x214]
call fcn.004022a0
cmp eax, 4
jl 0x4b10e7
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051c410
cmp dword [eax], esi
jl 0x4b10e7
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402a90
test al, al
jne 0x4b10b4
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x214]
call fcn.00403db0
test eax, eax
jne 0x4b10c8
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051c410
cmp esi, dword [eax]
jle 0x4b1070
jmp 0x4b10e7
mov eax, dword [ebp - 0x800]
lea ecx, [ebp - 0x340]
mov esi, dword [eax]
call fcn.00402700
push eax
push dword [ebp - 0x800]
mov eax, dword [esi + 0x1c]
call eax
lea ecx, [ebp - 0x810]
mov byte [ebp - 4], 0x29
call fcn.0051b5e0
mov esi, dword [0x5538a4]
inc edi
cmp edi, dword [ebp - 0x190]
jb 0x4b0ee0
push dword [ebp - 0x828]
call esi
mov eax, dword [ebp - 0x818]
lea edx, [ebp - 0x190]
push edx
lea edx, [ebp - 0x828]
push edx
mov ecx, dword [eax]
push 5
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
jns 0x4b0ec0
mov edi, dword [ebp - 0x8c4]
lea ecx, [ebp - 0x818]
call fcn.0051b5e0
lea ecx, [ebp - 0x800]
call fcn.0051b5e0
lea ecx, [ebp - 0x2d4]
call fcn.00402240
lea ecx, [ebp - 0x214]
call fcn.00402240
lea ecx, [ebp - 0x340]
mov byte [ebp - 4], 0x22
call fcn.00402240
jmp 0x4b1882
push 4
lea ecx, [ebp - 0x804]
call fcn.004062b0
lea ecx, [ebp - 0x804]
call fcn.004097d0
lea eax, [ebp - 0x804]
push eax
push 0x56d3a0
push 1
push 0
push 0x56d3b0
call dword [0x55388c]
test eax, eax
jns 0x4b11c8
lea ecx, [ebp - 0x804]
mov byte [ebp - 4], 0x22
call fcn.0051b5e0
jmp 0x4b1882
lea ecx, [ebp - 0x930]
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x920]
movups xmmword [ebp - 0x8f0], xmm0
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x910]
movups xmmword [ebp - 0x8c0], xmm0
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x900]
movups xmmword [ebp - 0x950], xmm0
call fcn.004011a0
mov edi, eax
mov byte [ebp - 4], 0x2f
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x8f0]
mov ecx, dword [ebp - 0x804]
mov edx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
mov esi, dword [ecx]
movups xmmword [edx], xmm0
movups xmm0, xmmword [ebp - 0x8c0]
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x950]
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 - 0x900]
mov dword [ebp - 0x8b4], eax
call fcn.00401230
lea ecx, [ebp - 0x910]
call fcn.00401230
lea ecx, [ebp - 0x920]
call fcn.00401230
lea ecx, [ebp - 0x930]
mov byte [ebp - 4], 0x2b
call fcn.00401230
cmp byte [ebp - 0x8b4], 0
jne 0x4b186d
push 4
lea ecx, [ebp - 0x80c]
call fcn.004062b0
lea ecx, [ebp - 0x80c]
call fcn.004097d0
push 0x572c70
lea ecx, [ebp - 0x8d4]
mov byte [ebp - 4], 0x30
call fcn.00401080
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x804]
mov esi, dword [ecx]
lea ecx, [ebp - 0x80c]
push ecx
mov ecx, eax
call fcn.00401190
push eax
push dword [ebp - 0x804]
mov eax, dword [esi + 0x1c]
call eax
shr eax, 0x1f
lea ecx, [ebp - 0x8d4]
mov dword [ebp - 0x8b4], eax
mov byte [ebp - 4], 0x30
call fcn.00401130
cmp byte [ebp - 0x8b4], 0
jne 0x4b1862
push 4
lea ecx, [ebp - 0x824]
call fcn.004062b0
lea ecx, [ebp - 0x824]
call fcn.004097d0
mov byte [ebp - 4], 0x32
lea edx, [ebp - 0x824]
mov eax, dword [ebp - 0x80c]
push edx
push 1
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x38]
call eax
test eax, eax
js 0x4b1857
mov eax, dword [ebp - 0x824]
lea edx, [ebp - 0x1f0]
mov dword [ebp - 0x1f0], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
push 0xc
lea ecx, [ebp - 0x530]
call fcn.00405e90
lea ecx, [ebp - 0x530]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x328]
mov byte [ebp - 4], 0x33
call fcn.00405e90
lea ecx, [ebp - 0x328]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0x34
call fcn.00405e90
lea ecx, [ebp - 0x524]
call fcn.00401aa0
mov esi, 1
mov byte [ebp - 4], 0x35
mov dword [ebp - 0x8b4], esi
cmp dword [ebp - 0x1f0], esi
jl 0x4b1836
push 4
lea ecx, [ebp - 0x808]
mov dword [ebp - 0x83c], 0
call fcn.004062b0
lea ecx, [ebp - 0x808]
call fcn.004097d0
push 3
push esi
lea ecx, [ebp - 0x940]
mov byte [ebp - 4], 0x36
call fcn.004011b0
mov esi, eax
mov byte [ebp - 4], 0x37
lea edx, [ebp - 0x808]
mov ecx, dword [ebp - 0x824]
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 - 0x940]
mov dword [ebp - 0x8a8], eax
mov byte [ebp - 4], 0x36
call fcn.00401230
cmp byte [ebp - 0x8a8], 0
jne 0x4b180e
mov eax, dword [ebp - 0x808]
lea edx, [ebp - 0x83c]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
test eax, eax
js 0x4b180e
push dword [ebp - 0x83c]
lea ecx, [ebp - 0x530]
call fcn.00401ef0
push dword [ebp - 0x83c]
mov esi, dword [0x553460]
call esi
push 4
lea ecx, [ebp - 0x820]
call fcn.004062b0
lea ecx, [ebp - 0x820]
call fcn.004097d0
mov byte [ebp - 4], 0x38
lea edx, [ebp - 0x820]
mov eax, dword [ebp - 0x808]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x4c]
call eax
test eax, eax
js 0x4b1803
push 4
lea ecx, [ebp - 0x81c]
call fcn.004062b0
lea ecx, [ebp - 0x81c]
call fcn.004097d0
mov byte [ebp - 4], 0x39
lea edx, [ebp - 0x81c]
mov eax, dword [ebp - 0x820]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x44]
call eax
test eax, eax
js 0x4b17f8
mov eax, dword [ebp - 0x81c]
lea edx, [ebp - 0x1ec]
mov dword [ebp - 0x1ec], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
mov edi, 1
cmp dword [ebp - 0x1ec], edi
jl 0x4b17f8
nop dword [eax]
push 4
lea ecx, [ebp - 0x7fc]
call fcn.004062b0
lea ecx, [ebp - 0x7fc]
call fcn.004097d0
mov byte [ebp - 4], 0x3a
lea edx, [ebp - 0x7fc]
mov eax, dword [ebp - 0x81c]
push edx
push edi
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x20]
call eax
test eax, eax
jns 0x4b158a
lea ecx, [ebp - 0x7fc]
mov byte [ebp - 4], 0x39
call fcn.0051b5e0
jmp 0x4b17eb
mov eax, dword [ebp - 0x7fc]
lea edx, [ebp - 0x41c]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x24]
call eax
test eax, eax
jns 0x4b15b7
lea ecx, [ebp - 0x7fc]
mov byte [ebp - 4], 0x39
call fcn.0051b5e0
jmp 0x4b17eb
cmp dword [ebp - 0x41c], 0
je 0x4b15d4
lea ecx, [ebp - 0x7fc]
mov byte [ebp - 4], 0x39
call fcn.0051b5e0
jmp 0x4b17eb
push 4
lea ecx, [ebp - 0x814]
call fcn.004062b0
lea ecx, [ebp - 0x814]
call fcn.004097d0
mov byte [ebp - 4], 0x3b
lea edx, [ebp - 0x814]
mov eax, dword [ebp - 0x7fc]
push edx
push str.MbLk
push eax
mov ecx, dword [eax]
mov eax, dword [ecx]
call eax
test eax, eax
jns 0x4b162c
lea ecx, [ebp - 0x814]
call fcn.0051b5e0
lea ecx, [ebp - 0x7fc]
mov byte [ebp - 4], 0x39
call fcn.0051b5e0
jmp 0x4b17eb
mov eax, dword [ebp - 0x814]
lea edx, [ebp - 0x830]
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 0
push edx
mov ecx, dword [eax]
push eax
mov eax, dword [ecx + 0x28]
call eax
mov eax, dword [ebp - 0x814]
lea edx, [ebp - 0x82c]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x30]
call eax
push dword [ebp - 0x830]
lea ecx, [ebp - 0x328]
call fcn.00401ef0
push dword [ebp - 0x82c]
lea ecx, [ebp - 0x524]
call fcn.00401ef0
mov eax, dword [ebp - 0x830]
test eax, eax
je 0x4b1699
push eax
call esi
mov eax, dword [ebp - 0x82c]
test eax, eax
je 0x4b16a6
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 - 0x524]
call fcn.00402700
push eax
push 0x5735d4
lea ecx, [ebp - 0x328]
call fcn.004040f0
push 0
lea ecx, [ebp - 0x328]
call fcn.00402b90
lea ecx, [ebp - 0x328]
call fcn.004022a0
cmp eax, 4
jge 0x4b1712
lea ecx, [ebp - 0x814]
call fcn.0051b5e0
lea ecx, [ebp - 0x7fc]
mov byte [ebp - 4], 0x39
call fcn.0051b5e0
jmp 0x4b17eb
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051c410
cmp dword [eax], esi
jl 0x4b17cb
nop dword [eax]
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402a90
test al, al
jne 0x4b1774
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x328]
call fcn.00403db0
test eax, eax
jne 0x4b1788
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051c410
cmp esi, dword [eax]
jle 0x4b1730
jmp 0x4b17cb
lea ecx, [ebp - 0x530]
call fcn.00402700
push eax
lea ecx, [ebp - 0x8d8]
call fcn.00401080
mov byte [ebp - 4], 0x3c
mov ecx, dword [ebp - 0x80c]
push 0
mov esi, dword [ecx]
mov ecx, eax
call fcn.00401190
push eax
push dword [ebp - 0x80c]
mov eax, dword [esi + 0x3c]
call eax
lea ecx, [ebp - 0x8d8]
call fcn.00401130
lea ecx, [ebp - 0x814]
call fcn.0051b5e0
lea ecx, [ebp - 0x7fc]
mov byte [ebp - 4], 0x39
call fcn.0051b5e0
mov esi, dword [0x553460]
inc edi
cmp edi, dword [ebp - 0x1ec]
jle 0x4b1540
lea ecx, [ebp - 0x81c]
call fcn.0051b5e0
lea ecx, [ebp - 0x820]
call fcn.0051b5e0
lea ecx, [ebp - 0x808]
mov byte [ebp - 4], 0x35
call fcn.0051b5e0
mov esi, dword [ebp - 0x8b4]
inc esi
mov dword [ebp - 0x8b4], esi
cmp esi, dword [ebp - 0x1f0]
jle 0x4b13e0
lea ecx, [ebp - 0x524]
call fcn.00402240
lea ecx, [ebp - 0x328]
call fcn.00402240
lea ecx, [ebp - 0x530]
call fcn.00402240
lea ecx, [ebp - 0x824]
call fcn.0051b5e0
lea ecx, [ebp - 0x80c]
call fcn.0051b5e0
lea ecx, [ebp - 0x804]
mov byte [ebp - 4], 0x22
call fcn.0051b5e0
mov edi, dword [ebp - 0x8c4]
xor eax, eax
mov edx, 0xc
cmp dword [ebp - 0x8d0], eax
setne al
xor ecx, ecx
inc eax
add eax, dword [edi + 0x30]
mov dword [ebp - 0x8c8], eax
mov dword [ebp - 0x8b4], eax
mul edx
seto cl
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call fcn.0053659c
add esp, 4
mov dword [ebp - 0x8a4], eax
mov ecx, dword [ebp - 0x8c8]
push fcn.00402240
push fcn.00401aa0
push ecx
mov byte [ebp - 4], 0x3d
mov dword [eax], ecx
add eax, 4
push 0xc
push eax
mov dword [ebp - 0x8a8], eax
call fcn.005365d1
mov byte [ebp - 4], 0x22
xor esi, esi
mov eax, dword [edi + 0x30]
test eax, eax
je 0x4b195a
mov eax, dword [ebp - 0x8a8]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x8b4], eax
nop
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58abc8
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x8b4]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x8b4], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4b1910
mov esi, dword [ebp - 0x8a8]
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 0x58ac20
push dword [ebp - 0x8b0]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x8d0], 0
je 0x4b19c1
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 0x58ac20
push dword [ebp - 0x8cc]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
push 8
lea ecx, [ebp - 0x550]
call fcn.00401750
push esi
lea ecx, [ebp - 0x550]
call fcn.004015d0
mov byte [ebp - 4], 0x3e
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x32
push dword [eax + 0x44]
call fcn.00438a00
cmp dword [ebp - 0x8a0], 0
je 0x4b1bfc
push 0xc
lea ecx, [ebp - 0x3dc]
mov dword [ebp - 0x8ec], 0x57dde0
mov dword [ebp - 0x8e8], 0x58ac78
mov dword [ebp - 0x8e4], 0x58ac88
call fcn.00405e90
lea ecx, [ebp - 0x3dc]
call fcn.00401aa0
cmp dword [ebp - 0x8c8], 0
mov byte [ebp - 4], 0x3f
jbe 0x4b1bed
xor eax, eax
mov dword [ebp - 0x8b4], eax
nop word [eax + eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp + eax*4 - 0x8ec]
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x124]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.00409800
test al, al
je 0x4b1bbb
lea ecx, [ebp - 0x20]
call fcn.0040a010
test eax, eax
je 0x4b1bbb
lea edi, [eax - 1]
test edi, edi
js 0x4b1bbb
nop dword [eax]
lea eax, [ebp - 0x44]
push eax
push edi
lea ecx, [ebp - 0x20]
call fcn.00409f10
test al, al
je 0x4b1bac
lea eax, [ebp - 0x3dc]
push eax
push dword [ebp - 0x44]
lea ecx, [ebp - 0x20]
call fcn.004099d0
lea ecx, [ebp - 0x3dc]
call fcn.004022a0
cmp eax, 4
jl 0x4b1bac
push 0
lea ecx, [ebp - 0x3dc]
call fcn.00402b90
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051c410
cmp dword [eax], esi
jl 0x4b1bac
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402a90
test al, al
jne 0x4b1b66
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3dc]
call fcn.00403db0
test eax, eax
jne 0x4b1b7a
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051c410
cmp esi, dword [eax]
jle 0x4b1b22
jmp 0x4b1bac
push dword [ebp - 0x44]
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040b260
test al, al
jne 0x4b1bac
push dword [ebp - 0x44]
lea ecx, [ebp - 0x124]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040b260
sub edi, 1
jns 0x4b1ac0
mov esi, dword [ebp - 0x8a8]
mov eax, dword [ebp - 0x8b4]
inc eax
mov dword [ebp - 0x8b4], eax
cmp eax, 3
jb 0x4b1a50
add esi, 0xc
sub dword [ebp - 0x8c8], 1
mov dword [ebp - 0x8a8], esi
jne 0x4b1a42
mov edi, dword [ebp - 0x8c4]
lea ecx, [ebp - 0x3dc]
mov byte [ebp - 4], 0x3e
call fcn.00402240
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x3c
push dword [eax + 0x44]
call fcn.00438a00
cmp dword [ebp - 0x8a0], 0
je 0x4b1d63
xor esi, esi
cmp dword [edi + 0x30], esi
jbe 0x4b1d63
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x418]
call fcn.00402700
push eax
push esi
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x124]
call fcn.00402310
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051c410
lea ecx, [ebp - 0x124]
push dword [eax]
push dword [ebp - 0x7f8]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004bc350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x1fc]
call fcn.00402700
push eax
push esi
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x124]
call fcn.00402310
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051c410
lea ecx, [ebp - 0x124]
push dword [eax]
push dword [ebp - 0x7f8]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004bc350
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x53c]
call fcn.00402700
push eax
push esi
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x124]
call fcn.00402310
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051c410
lea ecx, [ebp - 0x124]
push dword [eax]
push dword [ebp - 0x7f8]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004bc350
inc esi
cmp esi, dword [edi + 0x30]
jb 0x4b1c24
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051c410
lea ecx, [ebp - 0x50c]
push dword [eax]
push dword [ebp - 0x7f8]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004bc350
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051c410
lea ecx, [ebp - 0x34c]
push dword [eax]
push dword [ebp - 0x7f8]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004bc350
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x41
push dword [eax + 0x44]
call fcn.00438a00
cmp dword [ebp - 0x8a0], 0
je 0x4b2220
xor edi, edi
mov esi, str.HKCR
mov dword [ebp - 0x8a8], edi
nop dword [eax]
cmp edi, 1
jne 0x4b1df2
cmp dword [ebp - 0x8d0], 0
je 0x4b221a
push 0xc
lea ecx, [ebp - 0x31c]
call fcn.00405e90
lea ecx, [ebp - 0x31c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 0x40
call fcn.00405e90
lea ecx, [ebp - 0x3b8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x3c4]
mov byte [ebp - 4], 0x41
call fcn.00405e90
lea ecx, [ebp - 0x3c4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x464]
mov byte [ebp - 4], 0x42
call fcn.00405e90
cmp edi, 1
lea ecx, [ebp - 0x464]
mov eax, 0x58ac9c
push 1
cmovne eax, esi
push eax
call fcn.00401b70
push 4
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x43
call fcn.004062b0
lea ecx, [ebp - 0x140]
call fcn.004097d0
push 4
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x44
call fcn.004062b0
lea ecx, [ebp - 0x178]
call fcn.004097d0
push 4
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x45
call fcn.004062b0
lea ecx, [ebp - 0x154]
call fcn.004097d0
push 0xc
lea ecx, [ebp - 0x898]
mov byte [ebp - 4], 0x46
call fcn.00409750
lea ecx, [ebp - 0x898]
call fcn.00409790
push 0xc
lea ecx, [ebp - 0x88c]
mov byte [ebp - 4], 0x47
call fcn.00409750
lea ecx, [ebp - 0x88c]
call fcn.00409790
push 0
push 0x20019
lea ecx, [ebp - 0x464]
mov byte [ebp - 4], 0x48
call fcn.00402700
push eax
lea ecx, [ebp - 0x140]
call fcn.00409800
test al, al
je 0x4b21a3
lea eax, [ebp - 0x898]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x8b4], esi
call fcn.00409e90
test al, al
je 0x4b219e
mov eax, dword [ebp - 0x898]
test eax, eax
je 0x4b1f59
cmp word [eax], 0x2e
je 0x4b2176
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58acc0
push eax
push 0x572c70
lea ecx, [ebp - 0x464]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3b8]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x3b8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x178]
call fcn.00409800
test al, al
je 0x4b2176
lea ecx, [ebp - 0x178]
call fcn.00409fb0
test eax, eax
je 0x4b2176
lea edi, [eax - 1]
test edi, edi
js 0x4b2176
nop
lea eax, [ebp - 0x88c]
push eax
push edi
lea ecx, [ebp - 0x140]
call fcn.00409e90
test al, al
je 0x4b2167
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.Command
push dword [ebp - 0x88c]
lea ecx, [ebp - 0x3b8]
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x31c]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x31c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x154]
call fcn.00409800
test al, al
je 0x4b2167
lea eax, [ebp - 0x3c4]
push eax
push 0x572c78
lea ecx, [ebp - 0x154]
call fcn.004099d0
test al, al
je 0x4b2167
push 0
lea ecx, [ebp - 0x3c4]
call fcn.00402b90
lea ecx, [ebp - 0x3c4]
call fcn.004022a0
cmp eax, 4
jl 0x4b2167
push 0
lea ecx, [ebp - 0xbc]
mov esi, 1
call fcn.0051c410
cmp dword [eax], esi
jl 0x4b2167
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402a90
test al, al
jne 0x4b20e6
push 0
push 1
push 1
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3c4]
call fcn.00403db0
test eax, eax
jne 0x4b20fd
push 0
lea ecx, [ebp - 0xbc]
inc esi
call fcn.0051c410
cmp esi, dword [eax]
jle 0x4b20a2
jmp 0x4b2167
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x88c]
lea ecx, [ebp - 0x3b8]
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x31c]
call fcn.00402310
push 0
lea ecx, [ebp - 0x31c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x154]
call fcn.0040b260
test al, al
jne 0x4b2167
push 0
lea ecx, [ebp - 0x31c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x154]
call fcn.0040b260
sub edi, 1
jns 0x4b1fd0
mov esi, dword [ebp - 0x8b4]
lea eax, [ebp - 0x898]
inc esi
push eax
push esi
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x8b4], esi
call fcn.00409e90
test al, al
jne 0x4b1f45
mov edi, dword [ebp - 0x8a8]
mov esi, str.HKCR
lea ecx, [ebp - 0x88c]
call fcn.00402240
lea ecx, [ebp - 0x898]
call fcn.00402240
lea ecx, [ebp - 0x154]
call fcn.00409840
lea ecx, [ebp - 0x178]
call fcn.00409840
lea ecx, [ebp - 0x140]
call fcn.00409840
lea ecx, [ebp - 0x464]
call fcn.00402240
lea ecx, [ebp - 0x3c4]
call fcn.00402240
lea ecx, [ebp - 0x3b8]
call fcn.00402240
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x3e
call fcn.00402240
inc edi
mov dword [ebp - 0x8a8], edi
cmp edi, 2
jl 0x4b1de0
mov edi, dword [ebp - 0x8c4]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x46
push dword [eax + 0x44]
call fcn.00438a00
push 0
lea ecx, [ebp - 0xbc]
call fcn.0051c410
mov esi, dword [eax]
test esi, esi
jle 0x4b23f5
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4b22ac
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.004254a0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
push 0xc
lea ecx, [ebp - 0x470]
call fcn.00405e90
push esi
lea ecx, [ebp - 0xbc]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x470]
call fcn.00401b70
push esi
lea ecx, [ebp - 0x7f8]
mov byte [ebp - 4], 0x49
call fcn.0051b630
lea ecx, [eax + 4]
call fcn.00402700
push eax
call dword [0x5534e8]
lea ecx, [ebp - 0x470]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test eax, eax
je 0x4b2331
or dword [ebp - 0x8ac], 2
push 0x58acd0
jmp 0x4b2336
push 0x58ad3c
call fcn.00402700
push eax
push 0x5756bc
lea ecx, [ebp - 0x70]
call fcn.00402310
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x10]
call fcn.004022a0
cmp eax, 0x28
jle 0x4b23a4
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x10]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
test al, al
jne 0x4b23a4
push 0
push esi
lea ecx, [ebp - 0x7f8]
call fcn.0051b630
lea ecx, [eax + 0x10]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
push esi
lea ecx, [ebp - 0xbc]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa0]
call fcn.00437840
inc dword [edi + 0x28]
lea ecx, [ebp - 0x470]
inc dword [edi + 0x2c]
mov byte [ebp - 4], 0x3e
call fcn.00402240
dec esi
test esi, esi
jg 0x4b2250
push 0
push 0x574098
lea ecx, [ebp - 0xf4]
call fcn.004174b0
lea ecx, [ebp - 0x550]
call fcn.0051c290
lea ecx, [ebp - 0x124]
call fcn.00402240
lea ecx, [ebp - 0x7f8]
mov byte [ebp - 4], 0x1d
call fcn.0051b640
jmp 0x4b2440
push 0
push 0x58ad70
lea ecx, [ebp - 0xf4]
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa0]
call fcn.004389a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa0]
call fcn.00435500
push 0
push 0x58adc0
lea ecx, [ebp - 0xf4]
call fcn.004174b0
push 8
lea ecx, [ebp - 0x1ac]
call fcn.00401750
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa4]
call fcn.00437940
push eax
lea ecx, [ebp - 0x1ac]
call fcn.004015d0
mov byte [ebp - 4], 0x4a
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x4b
push dword [eax + 0x44]
call fcn.00438a00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x587b1c
push 0x572c70
lea ecx, [edi + 0x140]
call fcn.00402700
push eax
lea ecx, [ebp - 0x10c]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1ac]
call fcn.0051c410
push 0
cmp dword [eax], 0
je 0x4b2d57
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xa4]
call fcn.004389a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa4]
call fcn.00435500
push 0x58ae30
push 0xffffffffffffffff
lea ecx, [edi + 0x908]
call fcn.0043d5a0
push 0xc
lea ecx, [ebp - 0x238]
call fcn.00405e90
lea ecx, [ebp - 0x238]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x3ac]
mov byte [ebp - 4], 0x4b
call fcn.00405e90
lea ecx, [ebp - 0x3ac]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x4c
call fcn.00405e90
lea ecx, [ebp - 0x160]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x4d
call fcn.00405e90
lea ecx, [ebp - 0x174]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 0x4e
call fcn.00405e90
lea ecx, [ebp - 0x208]
call fcn.00401aa0
push 0
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 0x4f
call fcn.0051c410
mov esi, dword [eax]
mov dword [ebp - 0x8b4], esi
test esi, esi
jle 0x4b288a
push esi
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x899], 0
call fcn.0051c410
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.00437b60
push esi
lea ecx, [ebp - 0x1ac]
mov dword [ebp - 0x8a8], eax
call fcn.0051c410
mov ecx, dword [edi + 8]
push dword [eax]
push dword [ecx + 0xa4]
mov ecx, dword [edi + 4]
call fcn.00437f50
test eax, eax
je 0x4b287b
mov eax, dword [eax]
lea ecx, [ebp - 0x118]
cdq
push edx
push eax
call fcn.004030a0
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x238]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e3c
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x80
push 0
push 0
push 0x80
lea ecx, [ebp - 0x174]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e58
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x208]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e6c
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x3ac]
call fcn.00402cb0
push eax
push 0x572c78
push 0x5786f0
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
push esi
lea ecx, [ebp - 0x1ac]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x160]
call fcn.004026c0
lea ecx, [ebp - 0x70]
call fcn.00402250
mov eax, dword [ebp - 0x8a8]
cmp eax, 0xb
jne 0x4b295e
lea ecx, [ebp - 0x238]
call fcn.004022a0
test eax, eax
je 0x4b2815
lea ecx, [ebp - 0x208]
call fcn.00402700
lea ecx, [ebp - 0x238]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b28dc
mov byte [ebp - 0x899], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x174]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x208]
call fcn.00402700
push eax
push 0x58aef0
lea ecx, [ebp - 0x70]
call fcn.00402310
mov esi, dword [ebp - 0x8b4]
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
mov cl, byte [ebp - 0x899]
test cl, cl
je 0x4b2868
push esi
lea ecx, [ebp - 0x1ac]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa4]
call fcn.00437840
cmp byte [ebp - 0x899], 2
jne 0x4b2862
or dword [ebp - 0x8ac], 2
mov cl, byte [ebp - 0x899]
mov esi, dword [ebp - 0x8b4]
xor eax, eax
test cl, cl
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
dec esi
mov dword [ebp - 0x8b4], esi
test esi, esi
jg 0x4b25e0
push 0
push 0x574098
lea ecx, [ebp - 0xf4]
call fcn.004174b0
lea ecx, [ebp - 0x208]
call fcn.00402240
lea ecx, [ebp - 0x174]
call fcn.00402240
lea ecx, [ebp - 0x160]
call fcn.00402240
lea ecx, [ebp - 0x3ac]
call fcn.00402240
lea ecx, [ebp - 0x238]
mov byte [ebp - 4], 0x4a
call fcn.00402240
jmp 0x4b2d67
lea ecx, [ebp - 0x208]
call fcn.00402700
push eax
lea ecx, [ebp - 0x238]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov byte [ebp - 0x899], al
test al, al
jne 0x4b27d2
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x174]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x208]
call fcn.00402700
push eax
push 0x58ae90
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
jmp 0x4b2862
cmp eax, 0xc
jne 0x4b2a46
lea ecx, [ebp - 0x3ac]
call fcn.004022a0
test eax, eax
je 0x4b2815
lea ecx, [ebp - 0x3ac]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov byte [ebp - 0x899], al
cmp al, 1
je 0x4b29b8
lea ecx, [ebp - 0x3ac]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov byte [ebp - 0x899], al
lea ecx, [ebp - 0x174]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test al, al
jne 0x4b29f6
push 0x58ae78
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58af58
jmp 0x4b293f
cmp al, 2
jne 0x4b2a20
push 0x58afa8
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58afd0
jmp 0x4b2d38
push 0x58ae78
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58b028
jmp 0x4b2d38
cmp eax, 0xd
jne 0x4b2af7
lea ecx, [ebp - 0x160]
call fcn.00402700
mov dl, 1
mov ecx, eax
call fcn.0045e040
mov byte [ebp - 0x899], al
lea ecx, [ebp - 0x174]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
test al, al
jne 0x4b2aa7
push 0x58ae78
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58b080
jmp 0x4b293f
cmp al, 2
jne 0x4b2ad1
push 0x58afa8
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58b0c8
jmp 0x4b2d38
push 0x58ae78
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58b118
jmp 0x4b2d38
cmp eax, 0xe
jne 0x4b2ca6
push 0xc
lea ecx, [ebp - 0x244]
mov byte [ebp - 0x899], 0
call fcn.00405e90
lea ecx, [ebp - 0x244]
call fcn.00401aa0
push 0
push 0x20019
lea ecx, [ebp - 0x238]
mov byte [ebp - 4], 0x50
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.00409800
test al, al
je 0x4b2c55
lea eax, [ebp - 0x244]
push eax
lea ecx, [ebp - 0x208]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.004099d0
test al, al
je 0x4b2c55
push 0
push 1
push 1
push 0
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
lea ecx, [ebp - 0x244]
call fcn.00403db0
test eax, eax
je 0x4b2c55
push 0
push 0
push 0x572c78
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
lea ecx, [ebp - 0x244]
call fcn.00404790
push 0
push 0
push 0x5742ac
push 0x58b17c
lea ecx, [ebp - 0x244]
call fcn.00404790
lea ecx, [ebp - 0x244]
call fcn.004022a0
cmp eax, 3
jge 0x4b2be4
lea ecx, [ebp - 0x244]
call fcn.00402250
push 0
lea ecx, [ebp - 0x244]
call fcn.00402700
push eax
push 7
lea ecx, [ebp - 0x208]
call fcn.00402700
push eax
lea ecx, [ebp - 0x238]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a510
mov byte [ebp - 0x899], al
test al, al
je 0x4b2c55
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x174]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58b1d8
jmp 0x4b2c8a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x174]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58b188
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0x4f
call fcn.00402240
jmp 0x4b2815
cmp eax, 0xf
jne 0x4b2815
push 0
push 0x572c78
push 1
lea ecx, [ebp - 0x208]
call fcn.00402700
push eax
lea ecx, [ebp - 0x238]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a510
mov byte [ebp - 0x899], al
lea ecx, [ebp - 0x174]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
jne 0x4b2d1c
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58b230
jmp 0x4b293f
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x160]
call fcn.00402700
push eax
push 0x58b278
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
jmp 0x4b2831
push 0x58ad70
lea ecx, [ebp - 0xf4]
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa4]
call fcn.004389a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa4]
call fcn.00435500
push 0
push 0x58b2c8
lea ecx, [ebp - 0xf4]
call fcn.004174b0
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.00437940
push eax
lea ecx, [ebp - 0xa8]
call fcn.004015d0
mov byte [ebp - 4], 0x51
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x50
push dword [eax + 0x44]
call fcn.00438a00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58b348
push 0x572c70
lea ecx, [edi + 0x140]
call fcn.00402700
push eax
lea ecx, [ebp - 0x10c]
call fcn.00402310
push 0
lea ecx, [ebp - 0xa8]
call fcn.0051c410
cmp dword [eax], 0
je 0x4b97c9
mov ecx, 0x58402c
call fcn.004252d0
mov ecx, 0x57e3ac
call fcn.004252d0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push dword [eax + 0xa8]
call fcn.004389a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xa8]
call fcn.00435500
push 0x58b370
push 0xffffffffffffffff
lea ecx, [edi + 0x908]
call fcn.0043d5a0
push 0xc
lea ecx, [ebp - 0xa0]
call fcn.00405e90
lea ecx, [ebp - 0xa0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x52
call fcn.00405e90
lea ecx, [ebp - 0x88]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x53
call fcn.00405e90
lea ecx, [ebp - 0x94]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x54
call fcn.00405e90
lea ecx, [ebp - 0x7c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2f8]
mov byte [ebp - 4], 0x55
call fcn.00405e90
lea ecx, [ebp - 0x2f8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x56
call fcn.00405e90
lea ecx, [ebp - 0x130]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x57
call fcn.00405e90
lea ecx, [ebp - 0xb4]
call fcn.00401aa0
push 0
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x58
call fcn.0051c410
mov eax, dword [eax]
mov dword [ebp - 0x8a4], eax
test eax, eax
jle 0x4b9767
nop dword [eax]
push eax
lea ecx, [ebp - 0xa8]
mov byte [ebp - 0x8a0], 0
call fcn.0051c410
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437b60
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
mov esi, eax
call fcn.0051c410
mov ecx, dword [edi + 8]
push dword [eax]
push dword [ecx + 0xa8]
mov ecx, dword [edi + 4]
call fcn.00437f50
test eax, eax
je 0x4b9752
mov eax, dword [eax]
lea ecx, [ebp - 0x118]
cdq
push edx
push eax
call fcn.004030a0
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0xa0]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e3c
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x80
push 0
push 0
push 0x80
lea ecx, [ebp - 0x7c]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e58
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x2f8]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e6c
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x88]
call fcn.00402cb0
push eax
push 0x572c78
push 0x5786f0
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x100
push 0
push 0
push 0x100
lea ecx, [ebp - 0xb4]
call fcn.00402cb0
push eax
push 0x572c78
push 0x57cc50
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x94]
call fcn.004026c0
lea ecx, [ebp - 0x70]
call fcn.00402250
cmp esi, 0x18
jne 0x4b339e
push 1
push 1
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x94]
call fcn.004022c0
mov ecx, eax
call fcn.00402870
push 0xc
lea ecx, [ebp - 0x28c]
call fcn.00405e90
push 1
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x28c]
call fcn.00401b70
push 0xc
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x59
call fcn.00405e90
lea ecx, [ebp - 0x25c]
call fcn.00401aa0
push 0
push 0
lea ecx, [ebp - 0x28c]
mov byte [ebp - 4], 0x5a
call fcn.00402950
mov ecx, eax
call fcn.00402950
lea ecx, [ebp - 0x94]
call fcn.00402a90
test al, al
jne 0x4b337f
lea ecx, [ebp - 0x28c]
call fcn.00402a90
test al, al
jne 0x4b337f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58b3c0
lea ecx, [ebp - 0x28c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x25c]
call fcn.00402310
lea ecx, [ebp - 0x25c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040ad20
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58b408
lea ecx, [ebp - 0x28c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x25c]
call fcn.00402310
lea ecx, [ebp - 0x25c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040ad20
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58b468
push 0x58b4b0
lea ecx, [ebp - 0x28c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x25c]
call fcn.00402310
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
lea ecx, [ebp - 0x25c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a440
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040ad20
lea ecx, [ebp - 0xa0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
mov byte [ebp - 0x899], al
lea ecx, [ebp - 0x94]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x574098
test al, al
je 0x4b3335
call fcn.00402700
push eax
push 0x58b530
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b336e
call fcn.00402700
push eax
push 0x58b588
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
xor eax, eax
cmp byte [ebp - 0x899], al
sete al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
lea ecx, [ebp - 0x25c]
call fcn.00402240
lea ecx, [ebp - 0x28c]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x1a
jne 0x4b3d2b
push 0x58b5ec
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b3544
lea ecx, [ebp - 0xa0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b33f2
mov byte [ebp - 0x8a0], 1
push 1
push 0x58b728
lea ecx, [ebp - 0x70]
call fcn.004022c0
jmp 0x4b3cd4
push 0xc
lea ecx, [ebp - 0x268]
call fcn.00405e90
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x268]
call fcn.00401ac0
push 0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x5b
call fcn.00402950
lea ecx, [ebp - 0x268]
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.0040d0c0
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 0x58b618
mov dword [ebp - 0x8a0], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x268]
call fcn.00402310
lea ecx, [ebp - 0x268]
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.0040d0c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58b660
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x268]
call fcn.00402310
lea ecx, [ebp - 0x268]
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.0040d0c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58b468
push 0x58b4b0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x268]
call fcn.00402310
lea ecx, [ebp - 0x268]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.0040d0c0
lea ecx, [ebp - 0x268]
mov byte [ebp - 4], 0x58
call fcn.00402240
cmp byte [ebp - 0x8a0], 0
jne 0x4b33de
push 1
push 0x58b6c0
jmp 0x4b3883
push 0x58b798
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b376c
lea ecx, [ebp - 0xa0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b358f
mov byte [ebp - 0x8a0], 1
push 1
push 0x58b840
lea ecx, [ebp - 0x70]
call fcn.004022c0
jmp 0x4b3cd4
push 0xc
lea ecx, [ebp - 0x1a4]
call fcn.00405e90
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00401ac0
push 0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x5c
call fcn.00402950
lea ecx, [ebp - 0x1a4]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.0040d0c0
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 0x5840b0
mov byte [ebp - 0x8a0], al
call fcn.00402700
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00402310
lea ecx, [ebp - 0x1a4]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.0040d0c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5840e8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00402310
lea ecx, [ebp - 0x1a4]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.0040d0c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x584104
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00402310
lea ecx, [ebp - 0x1a4]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.0040d0c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58411c
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00402310
lea ecx, [ebp - 0x1a4]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.0040d0c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x584144
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00402310
lea ecx, [ebp - 0x1a4]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.0040d0c0
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 0x58
call fcn.00402240
cmp byte [ebp - 0x8a0], 0
jne 0x4b357b
push 1
push 0x58b7d0
jmp 0x4b3883
push 0x58b8b4
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b37fa
lea ecx, [ebp - 0x2f8]
call fcn.00402700
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b37c4
mov byte [ebp - 0x8a0], 1
push 1
push 0x58b958
lea ecx, [ebp - 0x70]
call fcn.004022c0
jmp 0x4b3cd4
lea ecx, [ebp - 0x2f8]
call fcn.00402700
push eax
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b37b0
push 1
push 0x58b8e8
jmp 0x4b3883
push 0x58b9c8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b38b3
lea ecx, [ebp - 0x2f8]
call fcn.00402700
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b3852
mov byte [ebp - 0x8a0], 1
push 1
push 0x58ba78
lea ecx, [ebp - 0x70]
call fcn.004022c0
jmp 0x4b3cd4
lea ecx, [ebp - 0x2f8]
call fcn.00402700
push eax
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b383e
push 1
push 0x58ba00
lea ecx, [ebp - 0x70]
call fcn.004022c0
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
xor eax, eax
cmp byte [ebp - 0x8a0], al
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
jmp 0x4b9752
push 0x58baf4
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
jne 0x4b3b5c
push 0x58bb20
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
jne 0x4b3b5c
push 0x58bd30
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b3cd4
push 4
lea ecx, [ebp - 0x144]
call fcn.004062b0
lea ecx, [ebp - 0x144]
call fcn.004097d0
push 0xc
lea ecx, [ebp - 0x334]
mov byte [ebp - 4], 0x5f
call fcn.00405e90
push 1
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x334]
call fcn.00401b70
push 0xc
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0x60
call fcn.00405e90
lea ecx, [ebp - 0x310]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x848]
mov byte [ebp - 4], 0x61
call fcn.00409750
lea ecx, [ebp - 0x848]
call fcn.00409790
xor esi, esi
mov byte [ebp - 4], 0x62
push esi
push 1
push 0xd
push 1
push 0x572c70
lea ecx, [ebp - 0x334]
call fcn.00403db0
cmp eax, 0xa
jge 0x4b39ef
lea ecx, [ebp - 0x848]
call fcn.00402240
lea ecx, [ebp - 0x310]
call fcn.00402240
lea ecx, [ebp - 0x334]
call fcn.00402240
lea ecx, [ebp - 0x144]
mov byte [ebp - 4], 0x58
call fcn.00409840
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
xor eax, eax
cmp byte [ebp - 0x8a0], al
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
jmp 0x4b9752
push 0
push 0x20019
dec eax
lea ecx, [ebp - 0x334]
push eax
call fcn.00403b50
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x144]
call fcn.00409800
test al, al
je 0x4b3b02
lea eax, [ebp - 0x848]
push eax
push 0
lea ecx, [ebp - 0x144]
call fcn.00409e90
test al, al
je 0x4b3b02
mov edi, esi
nop dword [eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58bd68
push dword [ebp - 0x848]
lea ecx, [ebp - 0x334]
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x310]
call fcn.00402310
lea ecx, [ebp - 0x310]
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.0040d0c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58bdac
push dword [ebp - 0x848]
lea ecx, [ebp - 0x334]
add esi, eax
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x310]
call fcn.00402310
lea ecx, [ebp - 0x310]
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.0040d0c0
add esi, eax
lea ecx, [ebp - 0x144]
lea eax, [ebp - 0x848]
inc edi
push eax
push edi
call fcn.00409e90
test al, al
jne 0x4b3a40
mov edi, dword [ebp - 0x8c4]
test esi, esi
lea ecx, [ebp - 0x70]
push 1
setg al
mov byte [ebp - 0x8a0], al
test esi, esi
jg 0x4b3b1d
push 0x58bde8
jmp 0x4b3b22
push 0x58be58
call fcn.004022c0
lea ecx, [ebp - 0x848]
call fcn.00402240
lea ecx, [ebp - 0x310]
call fcn.00402240
lea ecx, [ebp - 0x334]
call fcn.00402240
lea ecx, [ebp - 0x144]
mov byte [ebp - 4], 0x58
call fcn.00409840
jmp 0x4b3cd4
push 0xc
lea ecx, [ebp - 0x488]
call fcn.00405e90
lea ecx, [ebp - 0x488]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x5d
call fcn.00405e90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x57f148
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
lea ecx, [ebp - 0x47c]
call fcn.00401c10
push 1
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x5e
call fcn.00402700
push eax
lea ecx, [ebp - 0x88]
call fcn.00402700
mov esi, dword [0x5532b0]
push eax
call esi
test eax, eax
je 0x4b3c70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5735d0
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
push 0x58bb5c
lea ecx, [ebp - 0x364]
call fcn.00402700
push eax
lea ecx, [ebp - 0x488]
call fcn.00402310
push 1
push 0
lea ecx, [ebp - 0x488]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.00418b00
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
call dword [0x5534e8]
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b3c70
push 0
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
lea ecx, [ebp - 0x47c]
call fcn.00402700
push eax
call esi
push 0x58baf4
lea ecx, [ebp - 0x94]
call fcn.00401fb0
lea ecx, [ebp - 0x70]
push 1
test al, al
je 0x4b3ca0
cmp byte [ebp - 0x8a0], 0
jne 0x4b3c99
push 0x58bb88
jmp 0x4b3cb5
push 0x58bbe8
jmp 0x4b3cb5
cmp byte [ebp - 0x8a0], 0
jne 0x4b3cb0
push 0x58bc50
jmp 0x4b3cb5
push 0x58bcc0
call fcn.004022c0
lea ecx, [ebp - 0x47c]
call fcn.00402240
lea ecx, [ebp - 0x488]
mov byte [ebp - 4], 0x58
call fcn.00402240
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
cmp byte [ebp - 0x8a0], 0
je 0x4b3d15
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
xor eax, eax
cmp byte [ebp - 0x8a0], al
setne al
add dword [edi + 0x2c], eax
inc dword [edi + 0x28]
jmp 0x4b9752
cmp esi, 0x6f
jne 0x4b3dca
push 0x5759e4
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae280
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b3da1
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58bec8
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58bf08
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x70
jne 0x4b3e81
push 0x5759e4
push 0x58bf40
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae280
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b3e4f
call fcn.00402700
push eax
push 0x58bf7c
push 0x58bf88
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
inc dword [edi + 0x2c]
jmp 0x4b3e67
call fcn.00402700
push eax
push 0x58bf7c
push 0x58bff8
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
inc dword [edi + 0x28]
jmp 0x4b9752
cmp esi, 0x71
jne 0x4b3f8a
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x88]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e84
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
test eax, eax
je 0x4b3f4b
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x6f]
mov ecx, eax
call fcn.004158c0
test al, al
jne 0x4b3f06
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x6f]
mov ecx, eax
call fcn.004158c0
test al, al
je 0x4b3f4b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58c060
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58c0b8
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x72
jne 0x4b424c
push 0x58c108
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b413c
push 4
lea ecx, [ebp - 0x17c]
call fcn.004062b0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x17c]
call fcn.004097e0
push 0xc
lea ecx, [ebp - 0x3a0]
mov byte [ebp - 4], 0x63
call fcn.00405e90
lea ecx, [ebp - 0x3a0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x598]
mov byte [ebp - 4], 0x64
call fcn.00405e90
mov esi, dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x598]
call fcn.00401b70
lea eax, [ebp - 0x3a0]
mov byte [ebp - 4], 0x65
push eax
push 0x572c78
lea ecx, [ebp - 0x17c]
call fcn.004099d0
mov byte [ebp - 0x899], al
test al, al
je 0x4b40e2
push 0
push 0
push 0x572c78
lea ecx, [ebp - 0x598]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3a0]
call fcn.00404790
push 3
lea ecx, [ebp - 0x3a0]
call fcn.00404a70
push 0
lea ecx, [ebp - 0x3a0]
call fcn.00402700
push eax
push 1
push 0x572c78
lea ecx, [ebp - 0x17c]
call fcn.0040a070
mov byte [ebp - 0x899], al
test al, al
je 0x4b40e2
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58c148
jmp 0x4b410a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58c1c0
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x598]
call fcn.00402240
lea ecx, [ebp - 0x3a0]
call fcn.00402240
lea ecx, [ebp - 0x17c]
mov byte [ebp - 4], 0x58
call fcn.00409840
jmp 0x4b921c
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0x4c
lea ecx, [ebp - 0x750]
call fcn.0041aac0
lea ecx, [ebp - 0x750]
call fcn.0040dad0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x66
call fcn.00402700
push eax
lea ecx, [ebp - 0x750]
call fcn.0040dc70
mov byte [ebp - 0x899], al
test al, al
je 0x4b4207
push 0x572c78
lea ecx, [ebp - 0x750]
call fcn.0040de60
mov byte [ebp - 0x899], al
test al, al
je 0x4b4207
lea ecx, [ebp - 0x750]
call fcn.0040deb0
mov byte [ebp - 0x899], al
test al, al
je 0x4b4207
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58c228
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x750]
jmp 0x4b920d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58c278
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x750]
jmp 0x4b920d
cmp esi, 0x74
jne 0x4b4557
push 0xc
lea ecx, [ebp - 0x394]
call fcn.00405e90
lea ecx, [ebp - 0x394]
call fcn.00401aa0
lea ecx, [ebp - 0x394]
mov byte [ebp - 4], 0x67
call fcn.00402700
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
sete byte [ebp - 0x899]
test al, al
je 0x4b42c5
lea ecx, [ebp - 0x394]
call fcn.00402700
push eax
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov byte [ebp - 0x899], al
push 0x58c2bc
lea ecx, [ebp - 0x394]
call fcn.00401fb0
test al, al
je 0x4b4340
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b4331
push 0x58c2e0
call fcn.00402310
push 0x58c35c
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
jmp 0x4b4505
push 0x58c388
call fcn.00402310
jmp 0x4b452e
push 0x58c3fc
lea ecx, [ebp - 0x394]
call fcn.00401fb0
test al, al
je 0x4b4428
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b4419
push 0x58c440
call fcn.00402310
push 0x58c4c8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c4fc
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c538
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c578
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c5b8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c5f8
jmp 0x4b4318
push 0x58c638
call fcn.00402310
jmp 0x4b452e
push 0x58c6b8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b44fc
push 0xc
lea ecx, [ebp - 0x494]
call fcn.00405e90
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x494]
call fcn.00401b70
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x68
call fcn.00402700
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
push eax
lea ecx, [ebp - 0x494]
push 0x58ae80
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b44e3
push 0x58c6e8
call fcn.00402310
push 0x58c4c8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
jmp 0x4b44ed
push 0x58c758
call fcn.00402310
lea ecx, [ebp - 0x494]
mov byte [ebp - 4], 0x67
call fcn.00402240
cmp byte [ebp - 0x899], 0
je 0x4b452e
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
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.004ae630
lea ecx, [ebp - 0x394]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x73
jne 0x4b4948
push 0x58c7bc
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b4624
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x71]
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b45f7
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x70]
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b45f7
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58c858
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58c7f0
jmp 0x4b47af
push 0x58c8b8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b46ec
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b46bf
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b46bf
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58c938
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58c8e0
jmp 0x4b47af
push 0x58c988
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b47ce
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b4787
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b4787
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58ca28
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58c9c0
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
jmp 0x4b4868
push 0x58ca88
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b484d
lea ecx, [ebp - 0xa0]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0xa0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b48ae
mov byte [ebp - 0x8a0], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58cab8
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
cmp byte [ebp - 0x8a0], 0
je 0x4b489e
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
cmp byte [ebp - 0x8a0], 2
jne 0x4b489e
or dword [ebp - 0x8ac], 2
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8a0], al
jmp 0x4b974c
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b481d
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b481d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58cb08
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8a0], al
jmp 0x4b974c
cmp esi, 0x1f
jne 0x4b4d4b
lea ecx, [ebp - 0xa0]
call fcn.00402a90
test al, al
jne 0x4b9752
push 0xc
lea ecx, [ebp - 0x37c]
call fcn.00405e90
mov esi, dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x37c]
call fcn.00401b70
push 0x580438
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x69
call fcn.00401fb0
test al, al
jne 0x4b4b6d
push 0x58cb54
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
jne 0x4b4b6d
push 0x58cb78
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
jne 0x4b4b6d
push 0x58cb90
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b4a10
push 0x58cbb8
jmp 0x4b4b72
push 0x58cc14
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b4a2e
push 0x58cc48
jmp 0x4b4b72
push 0x58cc94
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b4a52
lea ecx, [ebp - 0x130]
call fcn.00402250
jmp 0x4b4b7d
push 0x5804fc
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b4ac6
push 4
lea ecx, [ebp - 0x180]
call fcn.004062b0
push 0
push 0x20019
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x180]
call fcn.004097e0
lea eax, [ebp - 0x130]
mov byte [ebp - 4], 0x6a
push eax
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
lea ecx, [ebp - 0x180]
call fcn.004099d0
test al, al
jne 0x4b4ada
lea ecx, [ebp - 0x180]
call fcn.00409840
lea ecx, [ebp - 0x37c]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
push 0
push 0
push 0x572c78
lea ecx, [ebp - 0x37c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x130]
call fcn.00404790
push 0
push 0
push 0x5742ac
push 0x58b17c
lea ecx, [ebp - 0x130]
call fcn.00404790
lea ecx, [ebp - 0x130]
call fcn.004022a0
dec eax
lea ecx, [ebp - 0x130]
push eax
call fcn.00402210
cmp word [eax], 0xa
jne 0x4b4b5c
push 1
lea ecx, [ebp - 0x130]
call fcn.00403b90
lea ecx, [ebp - 0x130]
call fcn.004022a0
dec eax
lea ecx, [ebp - 0x130]
push eax
call fcn.00402210
cmp word [eax], 0xa
je 0x4b4b31
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x69
call fcn.00409840
jmp 0x4b4b7d
push 0x577c34
lea ecx, [ebp - 0x130]
call fcn.00401ef0
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
test al, al
jne 0x4b4bed
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x130]
call fcn.00402700
push eax
push 0x58cccc
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ccdc
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b4d22
lea ecx, [ebp - 0x130]
call fcn.004022a0
test eax, eax
je 0x4b4c80
push 0x5804fc
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b4c80
push 0
lea ecx, [ebp - 0x130]
call fcn.00402700
push eax
push 7
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a070
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58cd04
lea ecx, [ebp - 0x37c]
call fcn.00402700
push eax
push 0x58cd28
jmp 0x4b4cf6
lea ecx, [ebp - 0x130]
call fcn.004022a0
test eax, eax
je 0x4b4cfe
push 0
lea ecx, [ebp - 0x130]
call fcn.00402700
push eax
push 1
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a070
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x130]
call fcn.00402700
push eax
push 0x58cccc
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58cd58
lea ecx, [ebp - 0x70]
call fcn.00402310
push esi
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
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.004ae630
lea ecx, [ebp - 0x37c]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x20
jne 0x4b4f36
lea ecx, [ebp - 0xa0]
call fcn.00402a90
test al, al
jne 0x4b9752
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
jne 0x4b4dbd
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58cd88
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b4e0a
call fcn.00402700
push eax
push 0x58bf7c
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58cdd8
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
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.004ae630
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x584538
lea ecx, [ebp - 0xa0]
call fcn.004040f0
push 0
push 0xffffffffffffffff
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.00409800
test al, al
je 0x4b9752
push 0
push 0x584588
push 1
push 0x578090
lea ecx, [ebp - 0x20]
call fcn.0040a070
push 0
push 0x584638
push 1
push 0x5844f8
lea ecx, [ebp - 0x20]
call fcn.0040a070
push 0
push 0x584598
push 1
push 0x584620
lea ecx, [ebp - 0x20]
call fcn.0040a070
push 0
lea eax, [ebp - 0x428]
mov dword [ebp - 0x428], 1
push eax
push 4
push 0x584680
lea ecx, [ebp - 0x20]
call fcn.0040a070
push 0
push 0x5847d8
push 1
push 0x584518
lea ecx, [ebp - 0x20]
call fcn.0040a070
push 0
push 0x5846b0
push 1
push 0x584510
lea ecx, [ebp - 0x20]
call fcn.0040a070
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402950
push 0
push 0x584480
push 1
push 0x5844d0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a2a0
jmp 0x4b9752
cmp esi, 0x21
jne 0x4b55bb
lea ecx, [ebp - 0xb4]
call fcn.00402a90
test al, al
jne 0x4b9752
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ba830
mov ecx, eax
test ecx, ecx
js 0x4b9752
mov eax, dword [edi + 0x30]
mov dword [ebp - 0x8b4], eax
cmp ecx, eax
jl 0x4b4f86
cmp eax, 1
je 0x4b4f90
mov esi, dword [edi + 0x104]
jmp 0x4b4f9e
mov dword [ebp - 0x8b4], 1
push ecx
lea ecx, [edi + 0x104]
call fcn.0051c270
mov esi, eax
push 0xc
lea ecx, [ebp - 0xc8]
call fcn.00405e90
lea ecx, [ebp - 0xc8]
call fcn.00401aa0
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0x8b4]
test eax, eax
jle 0x4b51c2
mov edi, eax
nop word [eax + eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58ce30
mov ecx, esi
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58cea8
mov ecx, esi
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58cf20
mov ecx, esi
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58cf98
mov ecx, esi
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d008
mov ecx, esi
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d0a0
mov ecx, esi
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0xc8]
call fcn.00402310
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
add esi, 0xc
sub edi, 1
jne 0x4b4fd0
mov edi, dword [ebp - 0x8c4]
mov eax, dword [ebp - 0x8b4]
cmp eax, dword [edi + 0x30]
jl 0x4b5375
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
mov esi, dword [ebp - 0x8b0]
lea ecx, [ebp - 0xc8]
push eax
push 0x58d100
push esi
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d178
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d1f0
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d268
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d2d8
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d370
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov eax, dword [ebp - 0x8b4]
cmp dword [ebp - 0x8d0], 0
je 0x4b552f
cmp eax, dword [edi + 0x30]
jl 0x4b552f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
mov esi, dword [ebp - 0x8cc]
lea ecx, [ebp - 0xc8]
push eax
push 0x58d100
push esi
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d178
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d1f0
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d268
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58d2d8
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
push 0
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d370
push esi
lea ecx, [ebp - 0xc8]
call fcn.00402310
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
lea ecx, [ebp - 0xc8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58d3d0
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
inc dword [edi + 0x2c]
lea ecx, [ebp - 0xc8]
inc dword [edi + 0x28]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x23
jne 0x4b58c3
push 0x58c108
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b576d
push 4
lea ecx, [ebp - 0x184]
call fcn.004062b0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x184]
call fcn.004097e0
push 0xc
lea ecx, [ebp - 0x3d0]
mov byte [ebp - 4], 0x6c
call fcn.00405e90
lea ecx, [ebp - 0x3d0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x58c]
mov byte [ebp - 4], 0x6d
call fcn.00405e90
mov esi, dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x58c]
call fcn.00401b70
lea eax, [ebp - 0x3d0]
mov byte [ebp - 4], 0x6e
push eax
push 0x572c78
lea ecx, [ebp - 0x184]
call fcn.004099d0
mov byte [ebp - 0x899], al
test al, al
je 0x4b5713
push 0
push 0
push 0x572c78
lea ecx, [ebp - 0x58c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3d0]
call fcn.00404790
push 3
lea ecx, [ebp - 0x3d0]
call fcn.00404a70
push 0
lea ecx, [ebp - 0x3d0]
call fcn.00402700
push eax
push 1
push 0x572c78
lea ecx, [ebp - 0x184]
call fcn.0040a070
mov byte [ebp - 0x899], al
test al, al
je 0x4b5713
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d418
jmp 0x4b573b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d480
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x58c]
call fcn.00402240
lea ecx, [ebp - 0x3d0]
call fcn.00402240
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0x58
call fcn.00409840
jmp 0x4b921c
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x88]
call fcn.00402cb0
push eax
push 0x572c78
push 0x5786f0
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0x4c
lea ecx, [ebp - 0x7a0]
call fcn.0041aac0
lea ecx, [ebp - 0x7a0]
call fcn.0040dad0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x6f
call fcn.00402700
push eax
lea ecx, [ebp - 0x7a0]
call fcn.0040dc70
mov byte [ebp - 0x899], al
test al, al
je 0x4b587e
push 0x572c78
lea ecx, [ebp - 0x7a0]
call fcn.0040de60
mov byte [ebp - 0x899], al
test al, al
je 0x4b587e
lea ecx, [ebp - 0x7a0]
call fcn.0040deb0
mov byte [ebp - 0x899], al
test al, al
je 0x4b587e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58d4e0
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x7a0]
jmp 0x4b920d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58d524
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x7a0]
jmp 0x4b920d
cmp esi, 0x25
jne 0x4b5d06
push 0xc
lea ecx, [ebp - 0x434]
call fcn.00405e90
lea ecx, [ebp - 0x434]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x3e8]
mov byte [ebp - 4], 0x70
call fcn.00405e90
mov esi, dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x3e8]
call fcn.00401b70
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x71
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x434]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e6c
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x434]
call fcn.004022a0
test eax, eax
je 0x4b598c
lea ecx, [ebp - 0x434]
call fcn.00402700
jmp 0x4b598e
xor eax, eax
push eax
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0xc
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x899], al
call fcn.00405e90
lea ecx, [ebp - 0x150]
call fcn.00401aa0
push 0x580438
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x72
call fcn.00401fb0
test al, al
je 0x4b5adc
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
push eax
lea ecx, [ebp - 0x3e8]
push 0x58ae80
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b5ad2
push 0x58d560
call fcn.00402310
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5804d0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x150]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x150]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.00409800
test al, al
je 0x4b5a83
lea ecx, [ebp - 0x20]
call fcn.0040a010
test eax, eax
jne 0x4b5c97
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x150]
call fcn.00401f00
push 0
lea ecx, [ebp - 0x150]
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d5b8
lea ecx, [ebp - 0x150]
call fcn.004040f0
push 0x5803cc
jmp 0x4b5c83
push 0x58d5d8
jmp 0x4b5cc2
push 0x58d628
lea ecx, [ebp - 0x94]
call fcn.00401fb0
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b5bc9
call fcn.00402700
push eax
lea ecx, [ebp - 0x3e8]
push 0x58ae80
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b5ad2
push 0x58d560
call fcn.00402310
lea ecx, [ebp - 0x20]
call fcn.0040a010
test eax, eax
jne 0x4b5c97
push 1
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x150]
call fcn.004022c0
push 0
lea ecx, [ebp - 0x150]
call fcn.00402950
lea ecx, [ebp - 0x150]
call fcn.00402700
mov edx, 0x580438
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b5c97
push 0
lea ecx, [ebp - 0x150]
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d5b8
lea ecx, [ebp - 0x150]
call fcn.004040f0
push 0x5803cc
jmp 0x4b5c83
call fcn.00402700
push eax
lea ecx, [ebp - 0x94]
push 0x58ae80
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b5cbd
push 0x58d650
call fcn.00402310
push 1
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x150]
call fcn.004022c0
push 0
lea ecx, [ebp - 0x150]
call fcn.00402950
push 0
push 0x20019
lea ecx, [ebp - 0x150]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.00409800
test al, al
je 0x4b5c4b
lea ecx, [ebp - 0x20]
call fcn.00409fb0
test eax, eax
jne 0x4b5c97
push 0
lea ecx, [ebp - 0x150]
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x580810
lea ecx, [ebp - 0x150]
call fcn.004040f0
push 0x580848
lea ecx, [ebp - 0x150]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push esi
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
inc dword [edi + 0x2c]
jmp 0x4b5cc7
push 0x58d690
call fcn.00402310
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004ae630
lea ecx, [ebp - 0x150]
call fcn.00402240
lea ecx, [ebp - 0x3e8]
call fcn.00402240
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x24
jne 0x4b60fe
push 0x58d6c8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b5df1
lea ecx, [ebp - 0xa0]
call fcn.00402a90
test al, al
jne 0x4b9752
push 0x58d6e0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58d6f8
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x899], al
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
add byte [ebp - 0x899], al
lea ecx, [ebp - 0xa0]
push 0x58d710
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
add al, byte [ebp - 0x899]
je 0x4b5dd4
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d730
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d778
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
push 0x58d7b8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b5ec0
lea ecx, [ebp - 0xa0]
call fcn.00402a90
test al, al
jne 0x4b9752
push 0x58aa90
lea ecx, [ebp - 0x7c]
call fcn.00401fb0
lea ecx, [ebp - 0xa0]
test al, al
je 0x4b5e51
push 0
push 0x57b95c
push 1
push 0x57b950
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a2a0
jmp 0x4b5e64
push 0x57b950
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b5ea3
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d7d0
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d818
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
push 0x58d858
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b6008
lea ecx, [ebp - 0xa0]
call fcn.00402a90
test al, al
jne 0x4b9752
push 0xc
lea ecx, [ebp - 0x440]
call fcn.00405e90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d5b8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x440]
call fcn.00401c10
push 0x5803cc
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0x73
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5840a4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x899], al
call fcn.00402700
push eax
lea ecx, [ebp - 0x440]
call fcn.00402310
push 0
lea ecx, [ebp - 0x440]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
add al, byte [ebp - 0x899]
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
mov byte [ebp - 0x899], al
push 0x58ae78
je 0x4b5fc9
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d8a0
jmp 0x4b5fd9
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d8e0
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0x58
call fcn.00402240
cmp byte [ebp - 0x899], 0
je 0x4b9249
push dword [ebp - 0x8a4]
jmp 0x4b9226
push 0x58d91c
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b9752
lea ecx, [ebp - 0xa0]
call fcn.00402a90
test al, al
jne 0x4b9752
lea ecx, [ebp - 0xa0]
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.0040d0c0
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 0x58d94c
push 0
setg byte [ebp - 0x899]
call fcn.00402950
mov ecx, eax
call fcn.004040f0
lea ecx, [ebp - 0xa0]
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.0040d0c0
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 0x58ae78
add al, byte [ebp - 0x899]
je 0x4b60e1
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d970
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
call fcn.00402700
push eax
push 0x58bf7c
push 0x58d9c0
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x2a
jne 0x4b619d
push 0x5759e4
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae280
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b6174
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58da04
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58da44
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x2b
jne 0x4b621f
push 0x5759e4
push 0x58bf40
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae280
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b6202
call fcn.00402700
push eax
push 0x58bf7c
push 0x58da78
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
call fcn.00402700
push eax
push 0x58bf7c
push 0x58dae8
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x2c
jne 0x4b6328
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x88]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e84
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
test eax, eax
je 0x4b62e9
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x2a]
mov ecx, eax
call fcn.004158c0
test al, al
jne 0x4b62a4
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x2a]
mov ecx, eax
call fcn.004158c0
test al, al
je 0x4b62e9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58db48
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58dba0
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x2d
jne 0x4b65ee
push 0x58c108
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b64da
push 4
lea ecx, [ebp - 0x188]
call fcn.004062b0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x188]
call fcn.004097e0
push 0xc
lea ecx, [ebp - 0x3f4]
mov byte [ebp - 4], 0x74
call fcn.00405e90
lea ecx, [ebp - 0x3f4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x580]
mov byte [ebp - 4], 0x75
call fcn.00405e90
mov esi, dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x580]
call fcn.00401b70
lea eax, [ebp - 0x3f4]
mov byte [ebp - 4], 0x76
push eax
push 0x572c78
lea ecx, [ebp - 0x188]
call fcn.004099d0
mov byte [ebp - 0x899], al
test al, al
je 0x4b6480
push 0
push 0
push 0x572c78
lea ecx, [ebp - 0x580]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3f4]
call fcn.00404790
push 3
lea ecx, [ebp - 0x3f4]
call fcn.00404a70
push 0
lea ecx, [ebp - 0x3f4]
call fcn.00402700
push eax
push 1
push 0x572c78
lea ecx, [ebp - 0x188]
call fcn.0040a070
mov byte [ebp - 0x899], al
test al, al
je 0x4b6480
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58dbf0
jmp 0x4b64a8
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58dc60
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x580]
call fcn.00402240
lea ecx, [ebp - 0x3f4]
call fcn.00402240
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x58
call fcn.00409840
jmp 0x4b921c
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0x4c
lea ecx, [ebp - 0x7f0]
call fcn.0041aac0
lea ecx, [ebp - 0x7f0]
call fcn.0040dad0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x77
call fcn.00402700
push eax
lea ecx, [ebp - 0x7f0]
call fcn.0040dc70
mov byte [ebp - 0x899], al
test al, al
je 0x4b65a9
push 0x572c78
lea ecx, [ebp - 0x7f0]
call fcn.0040de60
mov byte [ebp - 0x899], al
test al, al
je 0x4b65a9
lea ecx, [ebp - 0x7f0]
call fcn.0040deb0
mov byte [ebp - 0x899], al
test al, al
je 0x4b65a9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58dcc8
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x7f0]
jmp 0x4b920d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58dd18
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x7f0]
jmp 0x4b920d
cmp esi, 0x2f
jne 0x4b693b
push 0xc
lea ecx, [ebp - 0x2e0]
call fcn.00405e90
lea ecx, [ebp - 0x2e0]
call fcn.00401aa0
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x78
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x2e0]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e6c
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x2e0]
call fcn.00402700
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
sete byte [ebp - 0x899]
test al, al
je 0x4b66a9
lea ecx, [ebp - 0x2e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov byte [ebp - 0x899], al
push 0x58c2bc
lea ecx, [ebp - 0x2e0]
call fcn.00401fb0
test al, al
je 0x4b6724
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b6715
push 0x58dd60
call fcn.00402310
push 0x58c35c
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
jmp 0x4b68e9
push 0x58ddd8
call fcn.00402310
jmp 0x4b6912
push 0x58c3fc
lea ecx, [ebp - 0x2e0]
call fcn.00401fb0
test al, al
je 0x4b680c
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b67fd
push 0x58de48
call fcn.00402310
push 0x58c4c8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c4fc
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c538
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c578
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c5b8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c5f8
jmp 0x4b66fc
push 0x58ded0
call fcn.00402310
jmp 0x4b6912
push 0x58c6b8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b68e0
push 0xc
lea ecx, [ebp - 0x4a0]
call fcn.00405e90
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x4a0]
call fcn.00401b70
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x79
call fcn.00402700
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
push eax
lea ecx, [ebp - 0x4a0]
push 0x58ae80
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b68c7
push 0x58df50
call fcn.00402310
push 0x58c4c8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
jmp 0x4b68d1
push 0x58dfc0
call fcn.00402310
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 4], 0x78
call fcn.00402240
cmp byte [ebp - 0x899], 0
je 0x4b6912
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
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.004ae630
lea ecx, [ebp - 0x2e0]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x2e
jne 0x4b6c7d
push 0x58c7bc
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b6a08
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x2c]
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b69db
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x2b]
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b69db
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e090
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e028
jmp 0x4b47af
push 0x58c8b8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b6ad0
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b6aa3
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b6aa3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e148
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e0f0
jmp 0x4b47af
push 0x58c988
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b6b98
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b6b6b
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b6b6b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e200
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e198
jmp 0x4b47af
push 0x58e260
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b484d
lea ecx, [ebp - 0xa0]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0xa0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b6c10
mov byte [ebp - 0x8a0], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e290
jmp 0x4b4845
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b6be3
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b6be3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e2e0
jmp 0x4b491e
cmp esi, 0x33
jne 0x4b6d88
push 0x58e328
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b6cf1
push 0
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 0x58e34c
mov ecx, eax
call fcn.00464460
mov dword [ebp - 0x8a0], eax
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b6d42
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e380
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
cmp byte [ebp - 0x8a0], 1
jne 0x4b6d57
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8a0], al
jmp 0x4b974c
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e3d0
jmp 0x4b491e
mov al, byte [ebp - 0x8a0]
mov byte [ebp - 0x8a0], al
cmp al, 2
jne 0x4b489e
or dword [ebp - 0x8ac], 2
inc dword [edi + 0x28]
mov byte [ebp - 0x8a0], al
xor eax, eax
cmp byte [ebp - 0x8a0], al
jmp 0x4b974c
cmp esi, 0x34
jne 0x4b6fe0
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0x58e428
lea ecx, [ebp - 0x94]
call fcn.00401fb0
lea ecx, [ebp - 0x88]
test al, al
je 0x4b6e88
push 0
call fcn.00402700
mov edx, 0x58e468
mov ecx, eax
call fcn.00464460
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x899], al
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e4ac
lea ecx, [ebp - 0x88]
call fcn.004040f0
push 0x575594
push 0x58e4d8
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae280
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b6e67
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58e4f0
jmp 0x4b6f5a
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58e560
jmp 0x4b6f5a
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov byte [ebp - 0x899], al
test al, al
jne 0x4b6f28
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov byte [ebp - 0x899], al
test al, al
jne 0x4b6f28
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58e628
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x899], al
jmp 0x4b974c
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58e5c8
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
cmp byte [ebp - 0x899], 1
jne 0x4b6fb3
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x899], al
jmp 0x4b974c
mov al, byte [ebp - 0x899]
mov byte [ebp - 0x899], al
cmp al, 2
jne 0x4b6fd0
or dword [ebp - 0x8ac], 2
mov byte [ebp - 0x899], al
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x899], al
jmp 0x4b974c
cmp esi, 0x35
jne 0x4b744b
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x32]
mov ecx, eax
call fcn.004158c0
xorps xmm0, xmm0
mov byte [ebp - 0x899], al
push 0xc
lea ecx, [ebp - 0x2bc]
mov dword [ebp - 0x860], 0
movups xmmword [ebp - 0x870], xmm0
call fcn.00405e90
lea ecx, [ebp - 0x2bc]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x4ac]
mov byte [ebp - 4], 0x7a
call fcn.00405e90
lea ecx, [ebp - 0x4ac]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x7b
call fcn.00405e90
lea ecx, [ebp - 0x1b8]
call fcn.00401aa0
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x7c
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x1b8]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589ebc
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [edi + 0x5fc]
call fcn.004068d0
push 0
push 1
lea ecx, [ebp - 0x1b8]
call fcn.00402700
push eax
lea ecx, [edi + 0x5fc]
call fcn.00406ad0
push 0
push 0
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x89a], al
call fcn.00402700
lea edx, [esi - 0x34]
mov ecx, eax
call fcn.004075c0
push 0x100
lea ecx, [ebp - 0x1b8]
lea esi, [edi + 0x600]
call fcn.00402700
push eax
mov ecx, esi
call fcn.0041aef0
push 0
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
push 0x58e680
call fcn.0041b580
test al, al
je 0x4b7206
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
lea eax, [ebp - 0x870]
push eax
call fcn.0041cd40
test al, al
je 0x4b7206
nop
lea eax, [ebp - 0x2bc]
mov ecx, esi
push eax
push 0x58e690
lea eax, [ebp - 0x870]
push eax
call fcn.0041c380
test eax, eax
jne 0x4b719c
lea eax, [ebp - 0x2bc]
mov ecx, esi
push eax
push 0x58e6a8
lea eax, [ebp - 0x870]
push eax
call fcn.0041c380
test eax, eax
je 0x4b71e9
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00402160
test al, al
jne 0x4b71e9
lea eax, [ebp - 0x4ac]
mov ecx, esi
push eax
push 0x58e6b4
lea eax, [ebp - 0x870]
push eax
call fcn.0041c380
lea eax, [ebp - 0x870]
mov ecx, esi
push eax
call fcn.0041e810
test al, al
je 0x4b71e9
push 0
push 2
mov ecx, esi
call fcn.0041b000
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
lea eax, [ebp - 0x870]
push eax
call fcn.0041cd40
test al, al
jne 0x4b7160
cmp byte [ebp - 0x89a], 0
je 0x4b7230
push dword [edi + 0x624]
lea ecx, [ebp - 0x1b8]
push 0
push 1
call fcn.00402700
push eax
lea ecx, [edi + 0x5fc]
call fcn.00406e40
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x581108
push 0
lea ecx, [ebp - 0x1b8]
call fcn.00402950
mov ecx, eax
call fcn.004040f0
lea ecx, [edi + 0x5fc]
call fcn.004068d0
push 0
push 1
lea ecx, [ebp - 0x1b8]
call fcn.00402700
push eax
lea ecx, [edi + 0x5fc]
call fcn.00406ad0
push 0
push 0
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x89a], al
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.004075c0
push 0x100
lea ecx, [ebp - 0x1b8]
lea esi, [edi + 0x600]
call fcn.00402700
push eax
mov ecx, esi
call fcn.0041aef0
push 0
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
push 0x58e680
call fcn.0041b580
test al, al
je 0x4b736a
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
lea eax, [ebp - 0x870]
push eax
call fcn.0041cd40
test al, al
je 0x4b736a
nop
lea eax, [ebp - 0x2bc]
mov ecx, esi
push eax
push 0x58e6b4
lea eax, [ebp - 0x870]
push eax
call fcn.0041c380
test eax, eax
je 0x4b7351
lea eax, [ebp - 0x4ac]
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00402160
test al, al
jne 0x4b7351
lea eax, [ebp - 0x870]
mov ecx, esi
push eax
call fcn.0041e810
test al, al
je 0x4b7351
push 0
push 2
mov ecx, esi
call fcn.0041b000
lea eax, [ebp - 0x5d0]
mov ecx, esi
push eax
lea eax, [ebp - 0x870]
push eax
call fcn.0041cd40
test al, al
jne 0x4b7300
cmp byte [ebp - 0x89a], 0
je 0x4b7394
push dword [edi + 0x624]
lea ecx, [ebp - 0x1b8]
push 0
push 1
call fcn.00402700
push eax
lea ecx, [edi + 0x5fc]
call fcn.00406e40
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
push eax
lea ecx, [ebp - 0x94]
push 0x58ae80
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b7402
push 0x58e6c0
call fcn.00402310
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
inc dword [edi + 0x2c]
jmp 0x4b740c
push 0x58e718
call fcn.00402310
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004ae630
lea ecx, [ebp - 0x1b8]
call fcn.00402240
lea ecx, [ebp - 0x4ac]
call fcn.00402240
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x37
jne 0x4b76f5
push 0x58c108
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b75e1
push 4
lea ecx, [ebp - 0x198]
call fcn.004062b0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x198]
call fcn.004097e0
push 0xc
lea ecx, [ebp - 0x400]
mov byte [ebp - 4], 0x7d
call fcn.00405e90
lea ecx, [ebp - 0x400]
call fcn.00401aa0
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0xa8]
mov esi, dword [ebp - 0x8a4]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x130]
call fcn.004022c0
lea eax, [ebp - 0x400]
push eax
push 0x572c78
lea ecx, [ebp - 0x198]
call fcn.004099d0
mov byte [ebp - 0x899], al
test al, al
je 0x4b7592
push 0
push 0
push 0x572c78
lea ecx, [ebp - 0x130]
call fcn.00402700
push eax
lea ecx, [ebp - 0x400]
call fcn.00404790
push 3
lea ecx, [ebp - 0x400]
call fcn.00404a70
push 0
lea ecx, [ebp - 0x400]
call fcn.00402700
push eax
push 1
push 0x572c78
lea ecx, [ebp - 0x198]
call fcn.0040a070
mov byte [ebp - 0x899], al
test al, al
je 0x4b7592
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e768
jmp 0x4b75ba
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58e7e0
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x400]
call fcn.00402240
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x58
call fcn.00409840
jmp 0x4b921c
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0x4c
lea ecx, [ebp - 0x660]
call fcn.0041aac0
lea ecx, [ebp - 0x660]
call fcn.0040dad0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x7f
call fcn.00402700
push eax
lea ecx, [ebp - 0x660]
call fcn.0040dc70
mov byte [ebp - 0x899], al
test al, al
je 0x4b76b0
push 0x572c78
lea ecx, [ebp - 0x660]
call fcn.0040de60
mov byte [ebp - 0x899], al
test al, al
je 0x4b76b0
lea ecx, [ebp - 0x660]
call fcn.0040deb0
mov byte [ebp - 0x899], al
test al, al
je 0x4b76b0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58e848
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x660]
jmp 0x4b920d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58e898
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x660]
jmp 0x4b920d
cmp esi, 0x38
jne 0x4b7be3
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0x58e8e0
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b7866
push 0xc
lea ecx, [ebp - 0x5fc]
call fcn.00405e90
lea ecx, [ebp - 0x5fc]
call fcn.00401aa0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x80
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58113c
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.004158c0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x89a], al
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e928
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.004158c0
movzx ecx, byte [ebp - 0x89a]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x8b4], eax
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e4ac
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x36]
mov ecx, eax
call fcn.004158c0
mov edx, dword [ebp - 0x8b4]
movzx ecx, dl
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x5fc]
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x8c8], eax
call fcn.00402240
mov eax, dword [ebp - 0x8c8]
jmp 0x4b7b03
push 0x58e948
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b79bb
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
push 0xc
lea ecx, [ebp - 0x280]
mov byte [ebp - 0x8c8], al
call fcn.00405e90
lea ecx, [ebp - 0x280]
call fcn.00401aa0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x81
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ba830
test eax, eax
js 0x4b7921
cmp eax, dword [edi + 0x30]
jge 0x4b7921
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x585008
push eax
lea ecx, [edi + 0x104]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0x280]
call fcn.00402310
push 0
lea ecx, [ebp - 0x280]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e974
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0x280]
call fcn.00402310
push 0
lea ecx, [ebp - 0x280]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e974
push dword [ebp - 0x8b0]
lea ecx, [ebp - 0x280]
call fcn.00402310
push 0
lea ecx, [ebp - 0x280]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.0040b260
lea ecx, [ebp - 0x280]
mov byte [ebp - 4], 0x58
call fcn.00402240
mov eax, dword [ebp - 0x8c8]
jmp 0x4b7b03
push 0x58e9a8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b7ace
push 0
lea ecx, [ebp - 0x88]
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x581124
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e9dc
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x89a], al
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
movzx ecx, byte [ebp - 0x89a]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x8b4], eax
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e9e8
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov edx, dword [ebp - 0x8b4]
movzx ecx, dl
movzx eax, al
imul eax, ecx
jmp 0x4b7afd
push 0x58ea0c
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8c8], eax
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b7b9d
call fcn.00402700
push eax
push 0x58bf7c
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ea3c
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
test byte [ebp - 0x8c8], 2
je 0x4b7bd3
or dword [ebp - 0x8ac], 2
xor eax, eax
inc dword [edi + 0x28]
cmp byte [ebp - 0x8c8], al
jmp 0x4b974c
call fcn.00402700
push eax
push 0x58bf7c
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ea5c
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8c8], al
jmp 0x4b974c
cmp esi, 0x3e
jne 0x4b7c82
push 0x5759e4
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae280
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b7c59
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ea74
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58eaa0
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x3f
jne 0x4b7d22
push 0x5759e4
push 0x58bf40
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae280
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b7cf4
call fcn.00402700
push eax
push 0x58bf7c
push 0x58eac4
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eafc
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
call fcn.00402700
push eax
push 0x58bf7c
push 0x58eac4
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb28
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x40
jne 0x4b7e45
lea ecx, [ebp - 0x10c]
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x88]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e84
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
test eax, eax
je 0x4b7df9
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x3e]
mov ecx, eax
call fcn.004158c0
test al, al
jne 0x4b7da7
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x3e]
mov ecx, eax
call fcn.004158c0
test al, al
je 0x4b7df9
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58eb48
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb68
lea ecx, [ebp - 0x70]
call fcn.00402310
push dword [ebp - 0x8a4]
jmp 0x4b9226
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58eb48
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb98
lea ecx, [ebp - 0x70]
call fcn.00402310
jmp 0x4b9249
cmp esi, 0x41
jne 0x4b813f
push 0x58c108
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b8011
push 4
lea ecx, [ebp - 0x18c]
call fcn.004062b0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18c]
call fcn.004097e0
push 0xc
lea ecx, [ebp - 0x388]
mov byte [ebp - 4], 0x82
call fcn.00405e90
lea ecx, [ebp - 0x388]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x5bc]
mov byte [ebp - 4], 0x83
call fcn.00405e90
mov esi, dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x5bc]
call fcn.00401b70
lea eax, [ebp - 0x388]
mov byte [ebp - 4], 0x84
push eax
push 0x572c78
lea ecx, [ebp - 0x18c]
call fcn.004099d0
mov byte [ebp - 0x899], al
test al, al
je 0x4b7faa
push 0
push 0
push 0x572c78
lea ecx, [ebp - 0x5bc]
call fcn.00402700
push eax
lea ecx, [ebp - 0x388]
call fcn.00404790
push 3
lea ecx, [ebp - 0x388]
call fcn.00404a70
push 0
lea ecx, [ebp - 0x388]
call fcn.00402700
push eax
push 1
push 0x572c78
lea ecx, [ebp - 0x18c]
call fcn.0040a070
mov byte [ebp - 0x899], al
test al, al
je 0x4b7faa
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58ebc0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eafc
jmp 0x4b7fdf
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58ec00
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb28
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x5bc]
call fcn.00402240
lea ecx, [ebp - 0x388]
call fcn.00402240
lea ecx, [ebp - 0x18c]
mov byte [ebp - 4], 0x58
call fcn.00409840
jmp 0x4b921c
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0x4c
lea ecx, [ebp - 0x6b0]
call fcn.0041aac0
lea ecx, [ebp - 0x6b0]
call fcn.0040dad0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x85
call fcn.00402700
push eax
lea ecx, [ebp - 0x6b0]
call fcn.0040dc70
mov byte [ebp - 0x899], al
test al, al
je 0x4b80ed
push 0x572c78
lea ecx, [ebp - 0x6b0]
call fcn.0040de60
mov byte [ebp - 0x899], al
test al, al
je 0x4b80ed
lea ecx, [ebp - 0x6b0]
call fcn.0040deb0
mov byte [ebp - 0x899], al
test al, al
je 0x4b80ed
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ec3c
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eafc
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x6b0]
jmp 0x4b920d
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ec3c
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb28
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x6b0]
jmp 0x4b920d
cmp esi, 0x43
jne 0x4b84a0
push 0xc
lea ecx, [ebp - 0x2c8]
call fcn.00405e90
lea ecx, [ebp - 0x2c8]
call fcn.00401aa0
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x86
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x2c8]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589e6c
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [ebp - 0x2c8]
call fcn.00402700
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
sete byte [ebp - 0x899]
test al, al
je 0x4b81fa
lea ecx, [ebp - 0x2c8]
call fcn.00402700
push eax
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov byte [ebp - 0x899], al
push 0x58c2bc
lea ecx, [ebp - 0x2c8]
call fcn.00401fb0
test al, al
je 0x4b8282
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
push eax
lea ecx, [ebp - 0xb4]
push 0x58ec58
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b8273
push 0x58eb68
call fcn.00402310
push 0x58c35c
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
jmp 0x4b844e
push 0x58eb98
call fcn.00402310
jmp 0x4b8477
push 0x58c3fc
lea ecx, [ebp - 0x2c8]
call fcn.00401fb0
test al, al
je 0x4b8364
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
push eax
lea ecx, [ebp - 0xb4]
push 0x58ec98
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b8273
push 0x58eb68
call fcn.00402310
push 0x58c4c8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c4fc
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c538
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c578
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c5b8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
push 0x58c5f8
jmp 0x4b825a
push 0x58c6b8
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b8445
push 0xc
lea ecx, [ebp - 0x4b8]
call fcn.00405e90
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x4b8]
call fcn.00401b70
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x87
call fcn.00402700
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
push eax
lea ecx, [ebp - 0x4b8]
push 0x58ae80
call fcn.00402700
push eax
lea ecx, [ebp - 0xb4]
push 0x58ece8
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b842c
push 0x58eb68
call fcn.00402310
push 0x58c4c8
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
jmp 0x4b8436
push 0x58eb98
call fcn.00402310
lea ecx, [ebp - 0x4b8]
mov byte [ebp - 4], 0x86
call fcn.00402240
cmp byte [ebp - 0x899], 0
je 0x4b8477
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
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.004ae630
lea ecx, [ebp - 0x2c8]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x42
jne 0x4b8842
push 0
push 8
push 0x58ed1c
lea ecx, [ebp - 0x94]
call fcn.00405100
test al, al
je 0x4b8585
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x40]
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b854e
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x3f]
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b854e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ed58
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58edbc
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ed58
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58ed90
jmp 0x4b47af
push 0
push 8
push 0x58ede0
lea ecx, [ebp - 0x94]
call fcn.00405100
test al, al
je 0x4b8665
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b862e
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b862e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ee20
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58edbc
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ee20
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58ed90
jmp 0x4b47af
push 0
push 8
push 0x58ee58
lea ecx, [ebp - 0x94]
call fcn.00405100
test al, al
je 0x4b8745
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b870e
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b870e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ee88
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58edbc
jmp 0x4b491e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ee88
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58ed90
jmp 0x4b47af
push 0
push 8
push 0x58eeb0
lea ecx, [ebp - 0x94]
call fcn.00405100
test al, al
je 0x4b484d
lea ecx, [ebp - 0xa0]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0xa0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b87cb
mov byte [ebp - 0x8a0], 1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ea3c
jmp 0x4b4845
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b8794
push 0
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov dword [ebp - 0x8a0], eax
test al, al
jne 0x4b8794
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ea5c
jmp 0x4b491e
cmp esi, 0x47
jne 0x4b88ea
push 0
push 8
push 0x58eed8
lea ecx, [ebp - 0x94]
call fcn.00405100
test al, al
je 0x4b6cf1
push 0
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 0x58e34c
mov ecx, eax
call fcn.00464460
mov dword [ebp - 0x8a0], eax
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b88c4
call fcn.00402700
push eax
push 0x58bf7c
push 0x58ef04
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58ed90
jmp 0x4b6ce9
call fcn.00402700
push eax
push 0x58bf7c
push 0x58ef1c
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58edbc
jmp 0x4b491e
cmp esi, 0x48
jne 0x4b8ad4
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0
push 8
push 0x58ef44
lea ecx, [ebp - 0x94]
call fcn.00405100
lea ecx, [ebp - 0x88]
test al, al
je 0x4b8a0c
push 0
call fcn.00402700
mov edx, 0x58e468
mov ecx, eax
call fcn.00464460
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x899], al
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e4ac
lea ecx, [ebp - 0x88]
call fcn.004040f0
push 0x575594
push 0x58e4d8
lea ecx, [ebp - 0x88]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae280
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b89da
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ef7c
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb68
jmp 0x4b6f5a
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ef7c
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb98
jmp 0x4b6f5a
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov byte [ebp - 0x899], al
test al, al
jne 0x4b8a90
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov byte [ebp - 0x899], al
test al, al
jne 0x4b8a90
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58efb4
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb98
jmp 0x4b6efe
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58efb4
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb68
jmp 0x4b6f5a
cmp esi, 0x49
jne 0x4b8f49
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x46]
mov ecx, eax
call fcn.004158c0
xorps xmm0, xmm0
mov byte [ebp - 0x899], al
push 0xc
lea ecx, [ebp - 0x2ec]
mov dword [ebp - 0x84c], 0
movups xmmword [ebp - 0x85c], xmm0
call fcn.00405e90
lea ecx, [ebp - 0x2ec]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0x88
call fcn.00405e90
lea ecx, [ebp - 0x4dc]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 4], 0x89
call fcn.00405e90
lea ecx, [ebp - 0x1c4]
call fcn.00401aa0
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x8a
call fcn.00402700
push eax
push 0x800
push 0
push 0
push 0x800
lea ecx, [ebp - 0x1c4]
call fcn.00402cb0
push eax
push 0x572c78
push 0x589ebc
lea ecx, [ebp - 0x118]
call fcn.00402700
push eax
call dword [0x553390]
lea ecx, [edi + 0x5fc]
call fcn.004068d0
push 0
push 1
lea ecx, [ebp - 0x1c4]
call fcn.00402700
push eax
lea ecx, [edi + 0x5fc]
call fcn.00406ad0
push 0
push 0
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x89a], al
call fcn.00402700
lea edx, [esi - 0x48]
mov ecx, eax
call fcn.004075c0
push 0x100
lea ecx, [ebp - 0x1c4]
lea esi, [edi + 0x600]
call fcn.00402700
push eax
mov ecx, esi
call fcn.0041aef0
push 0
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
push 0x58e680
call fcn.0041b580
test al, al
je 0x4b8cf9
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
lea eax, [ebp - 0x85c]
push eax
call fcn.0041cd40
test al, al
je 0x4b8cf9
lea eax, [ebp - 0x2ec]
mov ecx, esi
push eax
push 0x58e690
lea eax, [ebp - 0x85c]
push eax
call fcn.0041c380
test eax, eax
jne 0x4b8c8f
lea eax, [ebp - 0x2ec]
mov ecx, esi
push eax
push 0x58e6a8
lea eax, [ebp - 0x85c]
push eax
call fcn.0041c380
test eax, eax
je 0x4b8cdc
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00402160
test al, al
jne 0x4b8cdc
lea eax, [ebp - 0x4dc]
mov ecx, esi
push eax
push 0x58e6b4
lea eax, [ebp - 0x85c]
push eax
call fcn.0041c380
lea eax, [ebp - 0x85c]
mov ecx, esi
push eax
call fcn.0041e810
test al, al
je 0x4b8cdc
push 0
push 2
mov ecx, esi
call fcn.0041b000
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
lea eax, [ebp - 0x85c]
push eax
call fcn.0041cd40
test al, al
jne 0x4b8c53
cmp byte [ebp - 0x89a], 0
je 0x4b8d23
push dword [edi + 0x624]
lea ecx, [ebp - 0x1c4]
push 0
push 1
call fcn.00402700
push eax
lea ecx, [edi + 0x5fc]
call fcn.00406e40
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x581108
push 0
lea ecx, [ebp - 0x1c4]
call fcn.00402950
mov ecx, eax
call fcn.004040f0
lea ecx, [edi + 0x5fc]
call fcn.004068d0
push 0
push 1
lea ecx, [ebp - 0x1c4]
call fcn.00402700
push eax
lea ecx, [edi + 0x5fc]
call fcn.00406ad0
push 0
push 0
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x89a], al
call fcn.00402700
mov edx, 1
mov ecx, eax
call fcn.004075c0
push 0x100
lea ecx, [ebp - 0x1c4]
lea esi, [edi + 0x600]
call fcn.00402700
push eax
mov ecx, esi
call fcn.0041aef0
push 0
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
push 0x58e680
call fcn.0041b580
test al, al
je 0x4b8e5b
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
lea eax, [ebp - 0x85c]
push eax
call fcn.0041cd40
test al, al
je 0x4b8e5b
lea eax, [ebp - 0x2ec]
mov ecx, esi
push eax
push 0x58e6b4
lea eax, [ebp - 0x85c]
push eax
call fcn.0041c380
test eax, eax
je 0x4b8e42
lea eax, [ebp - 0x4dc]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00402160
test al, al
jne 0x4b8e42
lea eax, [ebp - 0x85c]
mov ecx, esi
push eax
call fcn.0041e810
test al, al
je 0x4b8e42
push 0
push 2
mov ecx, esi
call fcn.0041b000
lea eax, [ebp - 0x5e4]
mov ecx, esi
push eax
lea eax, [ebp - 0x85c]
push eax
call fcn.0041cd40
test al, al
jne 0x4b8df1
cmp byte [ebp - 0x89a], 0
je 0x4b8e85
push dword [edi + 0x624]
lea ecx, [ebp - 0x1c4]
push 0
push 1
call fcn.00402700
push eax
lea ecx, [edi + 0x5fc]
call fcn.00406e40
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x7c]
push 0x58ae78
call fcn.00402700
push eax
lea ecx, [ebp - 0x94]
push 0x58ae80
call fcn.00402700
push eax
lea ecx, [ebp - 0xb4]
push 0x58efdc
call fcn.00402700
cmp byte [ebp - 0x899], 0
lea ecx, [ebp - 0x70]
push eax
je 0x4b8f00
push 0x58eff8
call fcn.00402310
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
inc dword [edi + 0x2c]
jmp 0x4b8f0a
push 0x58f028
call fcn.00402310
inc dword [edi + 0x28]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xf4]
mov ecx, edi
push eax
call fcn.004ae630
lea ecx, [ebp - 0x1c4]
call fcn.00402240
lea ecx, [ebp - 0x4dc]
call fcn.00402240
lea ecx, [ebp - 0x2ec]
mov byte [ebp - 4], 0x58
call fcn.00402240
jmp 0x4b9752
cmp esi, 0x4b
jne 0x4b9263
push 0x58c108
lea ecx, [ebp - 0x94]
call fcn.00401fb0
test al, al
je 0x4b90f9
push 4
lea ecx, [ebp - 0x194]
call fcn.004062b0
push 0
push 0x2001f
lea ecx, [ebp - 0xa0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x194]
call fcn.004097e0
push 0xc
lea ecx, [ebp - 0x40c]
mov byte [ebp - 4], 0x8b
call fcn.00405e90
lea ecx, [ebp - 0x40c]
call fcn.00401aa0
mov byte [ebp - 4], 0x8c
lea ecx, [ebp - 0xa8]
mov esi, dword [ebp - 0x8a4]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push 2
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437c80
push eax
lea ecx, [ebp - 0x130]
call fcn.004022c0
lea eax, [ebp - 0x40c]
push eax
push 0x572c78
lea ecx, [ebp - 0x194]
call fcn.004099d0
mov byte [ebp - 0x899], al
test al, al
je 0x4b909d
push 0
push 0
push 0x572c78
lea ecx, [ebp - 0x130]
call fcn.00402700
push eax
lea ecx, [ebp - 0x40c]
call fcn.00404790
push 3
lea ecx, [ebp - 0x40c]
call fcn.00404a70
push 0
lea ecx, [ebp - 0x40c]
call fcn.00402700
push eax
push 1
push 0x572c78
lea ecx, [ebp - 0x194]
call fcn.0040a070
mov byte [ebp - 0x899], al
test al, al
je 0x4b909d
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58ebc0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eafc
jmp 0x4b90d2
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58bf7c
push 0x58ebc0
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb28
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x40c]
call fcn.00402240
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 0x58
call fcn.00409840
jmp 0x4b921c
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0x4c
lea ecx, [ebp - 0x700]
call fcn.0041aac0
lea ecx, [ebp - 0x700]
call fcn.0040dad0
push 2
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x8d
call fcn.00402700
push eax
lea ecx, [ebp - 0x700]
call fcn.0040dc70
mov byte [ebp - 0x899], al
test al, al
je 0x4b91c0
push 0x572c78
lea ecx, [ebp - 0x700]
call fcn.0040de60
mov byte [ebp - 0x899], al
test al, al
je 0x4b91c0
lea ecx, [ebp - 0x700]
call fcn.0040deb0
mov byte [ebp - 0x899], al
test al, al
je 0x4b91c0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ec3c
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eafc
jmp 0x4b91ff
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x7c]
call fcn.00402700
push eax
push 0x58ae80
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ec3c
lea ecx, [ebp - 0xb4]
call fcn.00402700
push eax
push 0x58eb28
lea ecx, [ebp - 0x70]
call fcn.00402310
lea ecx, [ebp - 0x700]
mov byte [ebp - 4], 0x58
call fcn.0040dee0
mov esi, dword [ebp - 0x8a4]
cmp byte [ebp - 0x899], 0
je 0x4b9249
push esi
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
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.004ae630
jmp 0x4b9752
cmp esi, 0x4c
jne 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.004022a0
cmp eax, 0xa
jl 0x4b9752
push 0
push 8
push 0x58f050
lea ecx, [ebp - 0x94]
call fcn.00405100
test al, al
je 0x4b93d8
push 0xc
lea ecx, [ebp - 0x5f0]
call fcn.00405e90
lea ecx, [ebp - 0x5f0]
call fcn.00401aa0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x8e
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58113c
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.004158c0
push 0
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x89a], al
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e928
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.004158c0
movzx ecx, byte [ebp - 0x89a]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x8b4], eax
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e4ac
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
lea edx, [esi - 0x4a]
mov ecx, eax
call fcn.004158c0
mov edx, dword [ebp - 0x8b4]
movzx ecx, dl
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x5f0]
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x8a8], eax
call fcn.00402240
mov eax, dword [ebp - 0x8a8]
jmp 0x4b967f
push 0
push 8
push 0x58f094
lea ecx, [ebp - 0x94]
call fcn.00405100
test al, al
je 0x4b9531
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
push 0xc
lea ecx, [ebp - 0x298]
mov byte [ebp - 0x8a8], al
call fcn.00405e90
lea ecx, [ebp - 0x298]
call fcn.00401aa0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x8f
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ba830
test eax, eax
js 0x4b9497
cmp eax, dword [edi + 0x30]
jge 0x4b9497
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x585008
push eax
lea ecx, [edi + 0x104]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0x298]
call fcn.00402310
push 0
lea ecx, [ebp - 0x298]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e974
push dword [ebp - 0x8cc]
lea ecx, [ebp - 0x298]
call fcn.00402310
push 0
lea ecx, [ebp - 0x298]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.0040b260
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e974
push dword [ebp - 0x8b0]
lea ecx, [ebp - 0x298]
call fcn.00402310
push 0
lea ecx, [ebp - 0x298]
call fcn.00402700
push eax
lea ecx, [ebp - 0x18]
call fcn.0040b260
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 0x58
call fcn.00402240
mov eax, dword [ebp - 0x8a8]
jmp 0x4b967f
push 0
push 8
push 0x58f0b8
lea ecx, [ebp - 0x94]
call fcn.00405100
push 0
test al, al
je 0x4b9648
lea ecx, [ebp - 0x88]
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x581124
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e9dc
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x89a], al
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
movzx ecx, byte [ebp - 0x89a]
movzx eax, al
imul eax, ecx
lea ecx, [ebp - 0x88]
push 0
mov dword [ebp - 0x8b4], eax
call fcn.00402950
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58e9e8
lea ecx, [ebp - 0x88]
call fcn.004040f0
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov edx, dword [ebp - 0x8b4]
movzx ecx, dl
movzx eax, al
imul eax, ecx
jmp 0x4b9679
push 8
push 0x58f0e4
lea ecx, [ebp - 0x94]
call fcn.00405100
test al, al
je 0x4b9752
lea ecx, [ebp - 0x88]
call fcn.00402700
mov edx, 2
mov ecx, eax
call fcn.004158c0
mov dword [ebp - 0x8a8], eax
lea ecx, [ebp - 0x7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
test al, al
je 0x4b970b
call fcn.00402700
push eax
push 0x58bf7c
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ea3c
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
push dword [ebp - 0x8a4]
lea ecx, [ebp - 0xa8]
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xa8]
call fcn.00437840
test byte [ebp - 0x8a8], 2
je 0x4b9741
or dword [ebp - 0x8ac], 2
jmp 0x4b9741
call fcn.00402700
push eax
push 0x58bf7c
lea ecx, [ebp - 0x94]
call fcn.00402700
push eax
push 0x58ea5c
lea ecx, [ebp - 0x70]
call fcn.00402310
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x8a8], al
setne al
add dword [edi + 0x2c], eax
mov eax, dword [ebp - 0x8a4]
dec eax
mov dword [ebp - 0x8a4], eax
test eax, eax
jg 0x4b2f50
push 0
push 0x574098
lea ecx, [ebp - 0xf4]
call fcn.004174b0
lea ecx, [ebp - 0xb4]
call fcn.00402240
lea ecx, [ebp - 0x130]
call fcn.00402240
lea ecx, [ebp - 0x2f8]
call fcn.00402240
lea ecx, [ebp - 0x7c]
call fcn.00402240
lea ecx, [ebp - 0x94]
call fcn.00402240
lea ecx, [ebp - 0x88]
call fcn.00402240
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x51
call fcn.00402240
jmp 0x4b97db
push 0
push 0x58f110
lea ecx, [ebp - 0xf4]
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004389a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xa8]
call fcn.00435500
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0x40]
call fcn.00435500
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x22
push dword [eax + 0x30]
call fcn.00435500
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x186a0
push 0
push 0x58f158
push dword [eax + 0x30]
call fcn.00436500
push 0
push 0x58f1a0
lea ecx, [ebp - 0xf4]
call fcn.004174b0
push 8
lea ecx, [ebp - 0x168]
call fcn.00401750
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xb8]
call fcn.00437940
push eax
lea ecx, [ebp - 0x168]
call fcn.004015d0
mov byte [ebp - 4], 0x90
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x63
push dword [eax + 0x44]
call fcn.00438a00
push 0
lea ecx, [ebp - 0x168]
call fcn.0051c410
push 0
cmp dword [eax], 0
je 0x4ba48f
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xb8]
call fcn.004389a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x40
push dword [eax + 0xb8]
call fcn.00435500
push 0x58f210
push 0xffffffffffffffff
lea ecx, [edi + 0x908]
call fcn.0043d5a0
push 0xc
lea ecx, [ebp - 0xd4]
call fcn.00405e90
lea ecx, [ebp - 0xd4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 4], 0x91
call fcn.00405e90
lea ecx, [ebp - 0x1d0]
call fcn.00401aa0
push 0
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x92
call fcn.0051c410
mov esi, dword [eax]
mov dword [ebp - 0x8b0], esi
test esi, esi
jle 0x4b9b4a
nop
push esi
lea ecx, [ebp - 0x168]
mov byte [ebp - 0x899], 0
call fcn.0051c410
mov ecx, dword [edi + 4]
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xb8]
call fcn.00437b60
push esi
lea ecx, [ebp - 0x168]
mov dword [ebp - 0x8cc], eax
call fcn.0051c410
mov ecx, dword [edi + 8]
push 0
push dword [eax]
push dword [ecx + 0xb8]
mov ecx, dword [edi + 4]
call fcn.00437c80
push eax
lea ecx, [ebp - 0xd4]
call fcn.004026c0
mov eax, dword [ebp - 0x8cc]
cmp eax, 0x51
jne 0x4b9bf3
lea ecx, [ebp - 0xd4]
call fcn.00402700
push eax
push 0
call dword [0x5538ac]
lea ecx, [ebp - 0xd4]
mov esi, eax
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.00424d50
lea ecx, [ebp - 0xd4]
call fcn.00402700
mov edx, 3
mov ecx, eax
call fcn.004158c0
mov byte [ebp - 0x899], al
test esi, esi
je 0x4b9a8a
movsd xmm0, qword [edi + 0x368]
comisd xmm0, xmmword [0x5a8080]
jb 0x4b9a79
push 0xc
lea ecx, [ebp - 0x574]
call fcn.00405e90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5735d0
lea ecx, [ebp - 0xd4]
call fcn.00402700
push eax
push 0x58f254
push dword [edi + 0x184]
lea ecx, [ebp - 0x574]
call fcn.00401c10
push 0
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x574]
push dword [edi + 0x184]
call fcn.00402700
mov ecx, dword [edi + 0x1c54]
push eax
call fcn.0046f240
lea ecx, [ebp - 0x574]
mov byte [ebp - 4], 0x92
call fcn.00402240
mov al, byte [ebp - 0x899]
mov esi, dword [ebp - 0x8ac]
or esi, 4
mov dword [ebp - 0x8ac], esi
jmp 0x4b9a90
mov esi, dword [ebp - 0x8ac]
lea ecx, [ebp - 0xd4]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
cmp al, 2
jne 0x4b9ad5
push 0x58f280
call fcn.00402700
push eax
push 0x58f2b4
lea ecx, [ebp - 0x1d0]
call fcn.00402310
or esi, 2
mov dword [ebp - 0x8ac], esi
jmp 0x4b9f5b
push 0x58ae78
test al, al
je 0x4b9af9
call fcn.00402700
push eax
push 0x58f2e8
lea ecx, [ebp - 0x1d0]
call fcn.00402310
jmp 0x4b9f5b
call fcn.00402700
push eax
push 0x58f338
lea ecx, [ebp - 0x1d0]
call fcn.00402310
mov esi, dword [ebp - 0x8b0]
inc dword [edi + 0x28]
xor eax, eax
cmp byte [ebp - 0x899], al
mov ecx, edi
setne al
add dword [edi + 0x2c], eax
lea eax, [ebp - 0x1d0]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
dec esi
mov dword [ebp - 0x8b0], esi
test esi, esi
jg 0x4b9930
mov ecx, dword [ebp - 0x168]
mov eax, 1
mov dword [ebp - 0x8b0], eax
cmp dword [ecx], eax
jl 0x4ba1ad
push dword [ecx + eax*4]
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push dword [eax + 0xb8]
call fcn.00437b60
mov ecx, dword [ebp - 0x168]
mov esi, eax
mov eax, dword [ebp - 0x8b0]
push 0
push dword [ecx + eax*4]
mov ecx, dword [edi + 8]
push dword [ecx + 0xb8]
mov ecx, dword [edi + 4]
call fcn.00437c80
push eax
lea ecx, [ebp - 0xd4]
call fcn.004026c0
cmp esi, 0x53
jne 0x4ba192
push 0x58f548
lea ecx, [ebp - 0xd4]
xor esi, esi
call fcn.00401fb0
test al, al
je 0x4ba1e0
mov ecx, dword [edi + 0x1c54]
push 3
call fcn.0046f620
test edx, edx
jl 0x4ba13b
jg 0x4b9be9
test eax, eax
jb 0x4ba13b
mov esi, 1
jmp 0x4ba42f
cmp eax, 0x52
jne 0x4ba12d
push 0x18
lea ecx, [ebp - 0x1e8]
call fcn.004068b0
push 1
push 0x577640
lea ecx, [ebp - 0xd4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1e8]
call fcn.00405a80
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 4], 0x94
call fcn.00405b70
cmp eax, 1
jbe 0x4b9cb5
push 4
push 1
push 1
push 0
push str.HKLM
lea ecx, [ebp - 0xd4]
call fcn.00403db0
test eax, eax
je 0x4b9cb5
push 0
push 1
push 1
push 0
push 0x58f380
lea ecx, [ebp - 0xd4]
call fcn.00403db0
test eax, eax
je 0x4b9cb5
push 0
push 0x57b95c
push 1
push 1
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
push 0
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a510
mov cl, al
mov byte [ebp - 0x899], cl
jmp 0x4ba0ea
lea ecx, [ebp - 0x1e8]
call fcn.00405b70
cmp eax, 1
jbe 0x4b9d92
push 4
push 1
push 1
push 0
push str.HKLM
lea ecx, [ebp - 0xd4]
call fcn.00403db0
test eax, eax
je 0x4b9d92
push 0
push 1
push 1
push 0
push 0x58f400
lea ecx, [ebp - 0xd4]
call fcn.00403db0
test eax, eax
je 0x4b9d92
push 0xc
lea ecx, [ebp - 0x568]
call fcn.00405e90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x57ddc0
push dword [edi + 0x184]
lea ecx, [ebp - 0x568]
call fcn.00401c10
push 0
lea ecx, [ebp - 0x568]
mov byte [ebp - 4], 0x95
call fcn.00402700
push eax
push 1
push 1
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
push 0
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a510
lea ecx, [ebp - 0x568]
mov byte [ebp - 0x899], al
mov byte [ebp - 4], 0x94
call fcn.00402240
jmp 0x4ba0e4
lea ecx, [ebp - 0x1e8]
call fcn.00405b70
lea ecx, [ebp - 0x1e8]
cmp eax, 1
jne 0x4b9dcf
push 0
call fcn.00405b40
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b9dc8
mov byte [ebp - 0x899], 1
jmp 0x4ba0f2
push 0
jmp 0x4b9e20
call fcn.00405b70
lea ecx, [ebp - 0x1e8]
cmp eax, 2
jne 0x4b9e43
push 1
call fcn.00405b40
push 0
lea ecx, [ebp - 0x1e8]
mov esi, eax
call fcn.00405b40
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b9e12
mov byte [ebp - 0x899], 1
jmp 0x4ba0f2
push 1
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
push 0
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x20]
call fcn.0040b260
mov cl, al
mov byte [ebp - 0x899], cl
jmp 0x4ba0ea
call fcn.00405b70
lea ecx, [ebp - 0x1e8]
cmp eax, 2
jbe 0x4ba11f
push 1
call fcn.00405b40
push 0
lea ecx, [ebp - 0x1e8]
mov esi, eax
call fcn.00405b40
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4b9e86
mov byte [ebp - 0x899], 1
jmp 0x4ba0f2
push 0x10
lea ecx, [ebp - 0x880]
call fcn.00401a90
lea ecx, [ebp - 0x880]
call fcn.00409770
lea eax, [ebp - 0x880]
mov byte [ebp - 4], 0x96
push eax
push 1
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
push 0
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x20]
call fcn.00409990
mov eax, dword [ebp - 0x878]
cmp eax, 1
je 0x4b9f87
cmp eax, 7
je 0x4b9f87
lea ecx, [ebp - 0x880]
mov byte [ebp - 4], 0x94
call fcn.00402240
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0xd4]
call fcn.00402700
push eax
push 0x58f4f0
lea ecx, [ebp - 0x1d0]
call fcn.00402310
mov al, byte [ebp - 0x899]
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 4], 0x92
mov byte [ebp - 0x899], al
call fcn.00405b10
cmp byte [ebp - 0x899], 0
mov eax, dword [ebp - 0x8ac]
mov dword [ebp - 0x8ac], eax
je 0x4b9b0f
mov esi, dword [ebp - 0x8b0]
lea ecx, [ebp - 0x168]
push esi
call fcn.0051c410
mov ecx, dword [edi + 4]
push 0
push dword [eax]
mov eax, dword [edi + 8]
push dword [eax + 0xb8]
call fcn.00437840
jmp 0x4b9b15
push 0xc
lea ecx, [ebp - 0x518]
call fcn.00405e90
push 1
push dword [ebp - 0x880]
lea ecx, [ebp - 0x518]
call fcn.00401b70
push 0xc
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0x97
call fcn.00405e90
push 1
push 2
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x22c]
call fcn.00401b70
push 1
lea edx, [ebp - 0x22c]
mov byte [ebp - 4], 0x98
lea ecx, [ebp - 0x8dc]
call fcn.00405eb0
lea ecx, [ebp - 0x8dc]
call fcn.00401590
cmp dword [ebp - 0x878], 1
lea ecx, [ebp - 0x22c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
jne 0x4ba035
push 0x582b24
call fcn.00402700
push eax
push 0x582b30
lea ecx, [ebp - 0x22c]
call fcn.00402700
push eax
push 0x582b24
jmp 0x4ba056
push 0x582b38
call fcn.00402700
push eax
push 0x572d68
lea ecx, [ebp - 0x22c]
call fcn.00402700
push eax
push 0x582b38
lea ecx, [ebp - 0x22c]
call fcn.00402310
push 8
push 0
push 0x572c78
lea ecx, [ebp - 0x22c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x518]
call fcn.00405700
push 0
lea ecx, [ebp - 0x518]
call fcn.00402700
push eax
push dword [ebp - 0x878]
lea ecx, [ebp - 0x1e8]
push 1
call fcn.00405b40
push eax
push 0
lea ecx, [ebp - 0x1e8]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x20]
call fcn.0040a510
lea ecx, [ebp - 0x22c]
mov byte [ebp - 0x899], al
call fcn.00402240
lea ecx, [ebp - 0x518]
call fcn.00402240
lea ecx, [ebp - 0x880]
mov byte [ebp - 4], 0x94
call fcn.00402240
mov cl, byte [ebp - 0x899]
test cl, cl
je 0x4b9ef4
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0xd4]
call fcn.00402700
push eax
push 0x58f488
jmp 0x4b9f1c
mov byte [ebp - 4], 0x92
call fcn.00405b10
jmp 0x4b9b3b
cmp eax, 0x53
je 0x4b9b3b
jmp 0x4b9b15
xor esi, esi
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0xd4]
call fcn.00402700
push eax
push 0x58f960
lea ecx, [ebp - 0x1d0]
call fcn.00402310
xor eax, eax
mov ecx, edi
test esi, esi
setg al
add dword [edi + 0x2c], eax
lea eax, [ebp - 0x1d0]
inc dword [edi + 0x28]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004ae630
mov eax, dword [ebp - 0x8b0]
mov ecx, dword [ebp - 0x168]
inc eax
mov dword [ebp - 0x8b0], eax
cmp eax, dword [ecx]
jle 0x4b9b63
mov eax, dword [ebp - 0x1d0]
test eax, eax
je 0x4ba1c0
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x90
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x4ba49f
push eax
call fcn.00535f93
add esp, 4
jmp 0x4ba49f
push 0x58f578
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba206
mov ecx, dword [edi + 0x1c54]
push 1
call fcn.0049d260
jmp 0x4ba429
push 0x58f598
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba22a
mov ecx, dword [edi + 0x1c54]
call fcn.00476d30
jmp 0x4ba429
push 0x58f5cc
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba250
mov ecx, dword [edi + 0x1c54]
push 2
call fcn.0049f920
jmp 0x4ba429
push 0x58f5fc
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba276
mov ecx, dword [edi + 0x1c54]
push 1
call fcn.0049f920
jmp 0x4ba429
push 0x58f628
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba29a
mov ecx, dword [edi + 0x1c54]
call fcn.004a7a10
jmp 0x4ba429
push 0x58f660
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba2be
mov ecx, dword [edi + 0x1c54]
call fcn.0047b0b0
jmp 0x4ba429
push 0x58f6a8
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba2e2
mov ecx, dword [edi + 0x1c54]
call fcn.00479bb0
jmp 0x4ba429
push 0x58f6f0
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba308
mov ecx, dword [edi + 0x1c54]
push 5
call fcn.0049e2c0
jmp 0x4ba429
push 0x58f738
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba32e
mov ecx, dword [edi + 0x1c54]
push 0
call fcn.004a5ee0
jmp 0x4ba429
push 0x58f770
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba352
mov ecx, dword [edi + 0x1c54]
call fcn.004a5e70
jmp 0x4ba429
push 0x58f7b8
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba378
mov ecx, dword [edi + 0x1c54]
push 1
call fcn.00473fe0
jmp 0x4ba429
push 0x58f7e4
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba39c
mov ecx, dword [edi + 0x1c54]
call fcn.004865e0
jmp 0x4ba429
push 0x58f818
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba3c2
mov ecx, dword [edi + 0x1c54]
push 3
call fcn.00479330
jmp 0x4ba429
push 0x58f85c
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba3e5
mov ecx, dword [edi + 0x1c54]
push 0
call fcn.004789d0
jmp 0x4ba429
push 0x58f898
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba406
mov ecx, dword [edi + 0x1c54]
call fcn.0047a150
jmp 0x4ba429
push 0x58f8d8
lea ecx, [ebp - 0xd4]
call fcn.00401fb0
test al, al
je 0x4ba13d
mov ecx, dword [edi + 0x1c54]
call fcn.0047a450
mov esi, eax
test esi, esi
jle 0x4ba45c
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0xd4]
call fcn.00402700
push eax
push 0x58f910
jmp 0x4ba165
je 0x4ba13d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58f9a8
lea ecx, [ebp - 0xd4]
call fcn.00402700
push eax
push 0x58f9e4
jmp 0x4ba165
push 0x58ad70
lea ecx, [ebp - 0xf4]
call fcn.004174b0
mov eax, dword [edi + 0x28]
mov ecx, dword [ebp - 0x8ac]
or ecx, 1
cmp dword [edi + 0x2c], eax
mov eax, dword [edi + 8]
cmovae ecx, dword [ebp - 0x8ac]
push 1
mov dword [ebp - 0x8b0], ecx
push dword [eax + 0xb8]
mov ecx, dword [edi + 4]
call fcn.004389a0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x20
push dword [eax + 0xb8]
call fcn.00435500
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 2
push dword [eax + 0x40]
call fcn.00435500
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0x30]
call fcn.00435500
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x186a0
push 0
push 0x58750c
push dword [eax + 0x30]
call fcn.00436500
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x64
push dword [eax + 0x44]
call fcn.00438a00
lea eax, [ebp - 0x60c]
push eax
call dword [0x5532d4]
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x60c]
push eax
call dword [0x5532a0]
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x424]
call fcn.004213f0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58fa10
lea ecx, [ebp - 0x70]
call fcn.004044a0
push 0
lea ecx, [ebp - 0x70]
call fcn.00402700
push eax
lea ecx, [ebp - 0xf4]
call fcn.004174b0
push 0
push 0x58fa60
lea ecx, [ebp - 0xf4]
call fcn.004174b0
mov ecx, 0x58faac
call fcn.004062e0
cdq
lea ecx, [ebp - 0xf4]
mov esi, eax
mov edi, edx
call fcn.004165b0
add eax, esi
adc edx, edi
lea ecx, [ebp - 0x70]
push edx
push eax
call fcn.004030a0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58fabc
lea ecx, [ebp - 0x70]
call fcn.004040f0
push 0
lea ecx, [ebp - 0x70]
call fcn.00402700
push eax
lea ecx, [ebp - 0xf4]
call fcn.004174b0
push 0
lea ecx, [ebp - 0xf4]
call fcn.00417780
mov ecx, dword [ebp - 0x8c4]
push 0x58fad8
push 0x64
add ecx, 0x908
call fcn.0043d5a0
lea ecx, [ebp - 0x168]
call fcn.00402240
lea ecx, [ebp - 0xa8]
call fcn.00402240
lea ecx, [ebp - 0x1ac]
call fcn.00402240
lea ecx, [ebp - 0xf4]
call fcn.0041aa70
lea ecx, [ebp - 0xbc]
call fcn.00402240
lea ecx, [ebp - 0x70]
call fcn.00402240
lea ecx, [ebp - 0x118]
call fcn.00402240
lea ecx, [ebp - 0x10c]
call fcn.00402240
push fcn.00402240
push 2
push 0x10
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x17
push eax
call fcn.00536228
push fcn.00402240
push 3
push 0xc
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x16
push eax
call fcn.00536228
push fcn.00409840
push 3
push 4
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x15
push eax
call fcn.00536228
lea ecx, [ebp - 0x220]
call fcn.00402240
lea ecx, [ebp - 0x50c]
call fcn.00402240
lea ecx, [ebp - 0x34c]
call fcn.00402240
lea ecx, [ebp - 0x500]
call fcn.00402240
lea ecx, [ebp - 0x55c]
call fcn.00402240
lea ecx, [ebp - 0x358]
call fcn.00402240
lea ecx, [ebp - 0x44c]
call fcn.00402240
lea ecx, [ebp - 0x4f4]
call fcn.00402240
lea ecx, [ebp - 0x4e8]
call fcn.00402240
lea ecx, [ebp - 0x4d0]
call fcn.00402240
lea ecx, [ebp - 0x364]
call fcn.00402240
lea ecx, [ebp - 0x458]
call fcn.00402240
lea ecx, [ebp - 0x4c4]
call fcn.00402240
mov eax, dword [ebp - 0x548]
test eax, eax
je 0x4ba764
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x370]
test eax, eax
je 0x4ba777
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x418]
test eax, eax
je 0x4ba78a
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x53c]
test eax, eax
je 0x4ba79d
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x1fc]
test eax, eax
je 0x4ba7b0
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x304]
test eax, eax
je 0x4ba7c3
push eax
call fcn.00535f93
add esp, 4
mov ecx, dword [ebp - 0x2a4]
test ecx, ecx
je 0x4ba7d6
push ecx
call fcn.00535f93
add esp, 4
lea ecx, [ebp - 0x274]
call fcn.00402240
mov eax, dword [ebp - 0x8b0]
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.00535f85
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret