Function at 0x4c2877
Capabilities:
Contain obfuscated stackstrings

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 0x550819
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x70a8
call fcn.00536890
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 eax, ecx
mov dword [ebp - 0x6f44], eax
mov dword [ebp - 0x6fac], 0
lea ecx, [ebp - 0x27a4]
mov byte [eax + 0x170], 0
call fcn.00421440
mov ecx, dword [ebp - 0x6f44]
lea ecx, [ecx + 0x11c]
call fcn.00402250
xor ecx, ecx
call fcn.0040ccc0
test eax, eax
je 0x4bcd8e
push eax
call fcn.00535f93
add esp, 4
mov ecx, dword [ebp - 0x6f44]
push 0
call fcn.004ae480
mov eax, dword [ebp - 0x6f44]
push 1
mov eax, dword [eax + 8]
push dword [eax + 0x34]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00438a00
mov eax, dword [ebp - 0x6f44]
push 0
push 0x58fcfc
mov eax, dword [eax + 8]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00435c20
push 0xc
lea ecx, [ebp - 0x1f98]
call fcn.00405e90
lea ecx, [ebp - 0x1f98]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2178]
mov dword [ebp - 4], 0
call fcn.00405e90
lea ecx, [ebp - 0x2178]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2120]
mov byte [ebp - 4], 1
call fcn.00405e90
lea ecx, [ebp - 0x2120]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x28b4]
mov byte [ebp - 4], 2
call fcn.00405e90
lea ecx, [ebp - 0x28b4]
call fcn.00401aa0
mov byte [ebp - 4], 3
mov esi, 0xa0
mov eax, dword [ebp - 0x6f44]
push 0
push 0
push 0x1009
mov eax, dword [eax + 8]
push dword [esi + eax]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00433ed0
add esi, 4
cmp esi, 0xb8
jb 0x4bce50
push 0
push 0
push 0x80
lea ecx, [ebp - 0x2120]
call fcn.00402cb0
push eax
push 0
push 0
push 0x104
lea ecx, [ebp - 0x2178]
call fcn.00402cb0
push 0
push 0
push 0x80
lea ecx, [ebp - 0x28b4]
mov esi, eax
call fcn.00402cb0
mov edx, esi
mov ecx, eax
call fcn.0043f510
mov edi, dword [ebp - 0x6f44]
push 4
mov byte [ebp - 0x6f61], 1
mov dword [edi + 0x38], eax
mov eax, edi
mov eax, dword [eax + 8]
push dword [eax + 0x28]
mov eax, edi
mov ecx, dword [eax + 4]
call fcn.00436840
mov dword [ebp - 0x6f40], eax
test eax, eax
je 0x4bcf22
mov eax, edi
push 1
lea ecx, [eax + 0x114]
push ecx
lea edx, [eax + 0x10c]
lea ecx, [eax + 0x104]
call fcn.0043ec70
test eax, eax
mov dword [edi + 0x30], eax
setne cl
test eax, eax
jne 0x4bcfa2
jmp 0x4bcf28
mov cl, byte [ebp - 0x6f61]
mov eax, dword [ebp - 0x6f44]
cmp dword [eax + 0x38], 0
je 0x4bcf9a
lea ecx, [ebp - 0x2120]
mov dword [eax + 0x30], 1
push ecx
push 1
lea ecx, [eax + 0x104]
call fcn.0051c1a0
mov ecx, eax
call fcn.00401f00
mov ecx, dword [ebp - 0x6f44]
lea eax, [ebp - 0x2178]
push eax
push 1
lea ecx, [ecx + 0x10c]
call fcn.0051c1a0
mov ecx, eax
call fcn.00401f00
mov ecx, dword [ebp - 0x6f44]
lea eax, [ebp - 0x28b4]
push eax
push 1
lea ecx, [ecx + 0x114]
call fcn.0051c1a0
mov ecx, eax
call fcn.00401f00
jmp 0x4bcfa2
test cl, cl
je 0x4bd308
push 8
lea ecx, [ebp - 0x284c]
call fcn.00401750
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x284c]
add eax, 0x114
push eax
mov dword [ebp - 0x6f94], eax
call fcn.0051c300
push 8
lea ecx, [ebp - 0x2844]
mov byte [ebp - 4], 4
call fcn.00401750
mov esi, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x2844]
add esi, 0x10c
push esi
mov dword [ebp - 0x6f7c], esi
call fcn.0051c300
push 8
lea ecx, [ebp - 0x283c]
mov byte [ebp - 4], 5
call fcn.00401750
mov edi, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x283c]
add edi, 0x104
push edi
mov dword [ebp - 0x6f54], edi
call fcn.0051c300
mov eax, dword [ebp - 0x6f44]
mov ecx, edi
mov byte [ebp - 4], 6
mov eax, dword [eax + 0x30]
add eax, 2
push eax
call fcn.0051c1a0
mov edi, dword [ebp - 0x6f44]
mov ecx, esi
mov eax, dword [edi + 0x30]
add eax, 2
push eax
call fcn.0051c1a0
mov eax, dword [edi + 0x30]
mov edi, dword [ebp - 0x6f94]
add eax, 2
push eax
mov ecx, edi
call fcn.0051c1a0
mov eax, dword [ebp - 0x6f44]
xor esi, esi
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x4bd0ff
nop dword [eax]
push esi
lea ecx, [ebp - 0x283c]
call fcn.0051c270
mov ecx, eax
call fcn.00402280
mov ecx, dword [ebp - 0x6f54]
push eax
push esi
call fcn.0051c270
mov ecx, eax
call fcn.004026c0
push esi
lea ecx, [ebp - 0x2844]
call fcn.0051c270
mov ecx, eax
call fcn.00402280
mov ecx, dword [ebp - 0x6f7c]
push eax
push esi
call fcn.0051c270
mov ecx, eax
call fcn.004026c0
push esi
lea ecx, [ebp - 0x284c]
call fcn.0051c270
mov ecx, eax
call fcn.00402280
push eax
push esi
mov ecx, edi
call fcn.0051c270
mov ecx, eax
call fcn.004026c0
mov eax, dword [ebp - 0x6f44]
inc esi
mov ecx, dword [eax + 0x30]
cmp esi, ecx
jb 0x4bd080
push 0
push 0x58fd28
push 0x104
push ecx
lea ecx, [eax + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402cb0
mov ecx, eax
call fcn.00441200
mov eax, dword [ebp - 0x6f44]
push 0x58fd28
push dword [eax + 0x30]
lea ecx, [eax + 0x104]
call fcn.0051c270
mov ecx, eax
call fcn.00401ef0
mov edi, dword [ebp - 0x6f44]
mov ecx, edi
push 0x58fd3c
mov eax, dword [edi + 0x30]
lea ecx, [ecx + 0x104]
inc eax
push eax
mov dword [edi + 0x30], eax
call fcn.0051c270
mov ecx, eax
call fcn.00401ef0
mov eax, edi
push 0x58fd3c
push dword [eax + 0x30]
lea ecx, [eax + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00401ef0
lea eax, [ebp - 0x6dc0]
mov dword [ebp - 0x6dc0], 0x400
push eax
push 0
mov eax, edi
push 0
push 0x400
push dword [eax + 0x30]
lea ecx, [eax + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402cb0
push eax
call dword [0x5536a8]
mov edx, 0x58fd3c
mov ecx, 0x80000003
call fcn.0040c560
test al, al
jne 0x4bd26d
push 0xc
lea ecx, [ebp - 0x29bc]
call fcn.00405e90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
mov eax, edi
push 0
push str.NTUSER.DAT
push dword [eax + 0x30]
lea ecx, [eax + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x29bc]
call fcn.00401c10
lea ecx, [ebp - 0x29bc]
mov byte [ebp - 4], 7
call fcn.00402700
push eax
mov eax, edi
push dword [eax + 0x30]
lea ecx, [eax + 0x104]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0x80000003
call dword [0x553054]
test eax, eax
jne 0x4bd260
mov eax, edi
mov eax, dword [eax + 0x30]
inc eax
mov dword [edi + 0x30], eax
lea ecx, [ebp - 0x29bc]
call fcn.00402240
jmp 0x4bd276
mov eax, edi
mov eax, dword [eax + 0x30]
inc eax
mov dword [edi + 0x30], eax
lea ecx, [ebp - 0x283c]
call fcn.0051c290
lea ecx, [ebp - 0x2844]
call fcn.0051c290
lea ecx, [ebp - 0x284c]
mov byte [ebp - 4], 3
call fcn.0051c290
mov esi, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x27a4]
add esi, 0x140
call fcn.00421430
push edx
push eax
mov ecx, esi
call fcn.004031b0
mov ecx, dword [ebp - 0x6f44]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x57a47c
lea ecx, [ecx + 0x134]
call fcn.00402700
push eax
mov ecx, esi
call fcn.004044a0
mov ecx, esi
call fcn.00402700
or edx, 0xffffffff
mov ecx, eax
call fcn.00419c80
test al, al
jne 0x4bd318
mov eax, dword [ebp - 0x6f44]
push 1
mov ecx, eax
call fcn.004ae480
mov esi, eax
jmp 0x4d7f1b
mov ecx, esi
call fcn.00402700
push eax
call dword [0x5533b8]
or eax, 2
mov ecx, esi
push eax
call fcn.00402700
push eax
call dword [0x5533a4]
push 0
call dword [0x553890]
push 0xc
lea ecx, [ebp - 0x2220]
call fcn.00405e90
lea ecx, [ebp - 0x2220]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2184]
mov byte [ebp - 4], 8
call fcn.00405e90
lea ecx, [ebp - 0x2184]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x29a4]
mov byte [ebp - 4], 9
call fcn.00405e90
lea ecx, [ebp - 0x29a4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x25e4]
mov byte [ebp - 4], 0xa
call fcn.00405e90
lea ecx, [ebp - 0x25e4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x294c]
mov byte [ebp - 4], 0xb
call fcn.00405e90
lea ecx, [ebp - 0x294c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x24c8]
mov byte [ebp - 4], 0xc
call fcn.00405e90
lea ecx, [ebp - 0x24c8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x26c8]
mov byte [ebp - 4], 0xd
call fcn.00405e90
lea ecx, [ebp - 0x26c8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x28a8]
mov byte [ebp - 4], 0xe
call fcn.00405e90
lea ecx, [ebp - 0x28a8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2958]
mov byte [ebp - 4], 0xf
call fcn.00405e90
lea ecx, [ebp - 0x2958]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x25d8]
mov byte [ebp - 4], 0x10
call fcn.00405e90
lea ecx, [ebp - 0x25d8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x27c8]
mov byte [ebp - 4], 0x11
call fcn.00405e90
lea ecx, [ebp - 0x27c8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2940]
mov byte [ebp - 4], 0x12
call fcn.00405e90
lea ecx, [ebp - 0x2940]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x26d4]
mov byte [ebp - 4], 0x13
call fcn.00405e90
lea ecx, [ebp - 0x26d4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x26e0]
mov byte [ebp - 4], 0x14
call fcn.00405e90
lea ecx, [ebp - 0x26e0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x271c]
mov byte [ebp - 4], 0x15
call fcn.00405e90
lea ecx, [ebp - 0x271c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x27d4]
mov byte [ebp - 4], 0x16
call fcn.00405e90
lea ecx, [ebp - 0x27d4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2934]
mov byte [ebp - 4], 0x17
call fcn.00405e90
lea ecx, [ebp - 0x2934]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2928]
mov byte [ebp - 4], 0x18
call fcn.00405e90
lea ecx, [ebp - 0x2928]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2644]
mov byte [ebp - 4], 0x19
call fcn.00405e90
lea ecx, [ebp - 0x2644]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2638]
mov byte [ebp - 4], 0x1a
call fcn.00405e90
lea ecx, [ebp - 0x2638]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x291c]
mov byte [ebp - 4], 0x1b
call fcn.00405e90
lea ecx, [ebp - 0x291c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2578]
mov byte [ebp - 4], 0x1c
call fcn.00405e90
lea ecx, [ebp - 0x2578]
call fcn.00401aa0
mov byte [ebp - 4], 0x1d
call dword [0x553414]
mov ecx, eax
call fcn.00419590
mov edi, eax
mov ecx, str.HKLM
test edi, edi
mov dword [ebp - 0x6fa8], edi
mov eax, str.HKLM64
setne byte [ebp - 0x6f61]
test edi, edi
push 1
cmove eax, ecx
mov ecx, 0x572c78
mov dword [ebp - 0x6f8c], eax
mov eax, str.HKLM32
cmove eax, ecx
lea ecx, [ebp - 0x2220]
mov dword [ebp - 0x6fa4], eax
mov eax, dword [ebp - 0x6f44]
push dword [eax + 0x38]
push 0x1a
call fcn.00402c10
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x2184]
push 1
push dword [eax + 0x38]
push 0x1c
call fcn.00402c10
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x25e4]
push 1
push dword [eax + 0x38]
push 2
call fcn.00402c10
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x24c8]
push 1
push dword [eax + 0x38]
push 0x10
call fcn.00402c10
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x271c]
push 1
push dword [eax + 0x38]
push 0x23
call fcn.00402c10
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x28a8]
push 1
push dword [eax + 0x38]
push 7
call fcn.00402c10
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x2958]
push 1
push dword [eax + 0x38]
push 5
call fcn.00402c10
push 0x400
push 0
push 0
push 0x400
lea ecx, [ebp - 0x26c8]
call fcn.00402cb0
push eax
mov eax, dword [ebp - 0x6f44]
push 0x58a858
push dword [eax + 0x38]
call dword [0x5536ac]
push 0x400
lea ecx, [ebp - 0x26c8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x26c8]
call fcn.00402700
push eax
call dword [0x553418]
push 0x104
push 0
push 0
push 0x104
lea ecx, [ebp - 0x25d8]
call fcn.00402cb0
push eax
call dword [0x553358]
test edi, edi
je 0x4bd76d
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 - 0x25d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x27c8]
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 - 0x25d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2940]
call fcn.00402310
jmp 0x4bd79f
push 0x104
push 0
push 0
push 0x104
lea ecx, [ebp - 0x27c8]
call fcn.00402cb0
push eax
call dword [0x5533b0]
lea eax, [ebp - 0x27c8]
push eax
lea ecx, [ebp - 0x2940]
call fcn.00401f00
push edi
lea edx, [ebp - 0x26e0]
lea ecx, [ebp - 0x26d4]
call fcn.0041a640
push 0
push 0
push 0x2b
lea ecx, [ebp - 0x27d4]
call fcn.00402c10
push 0
push 0
push 0x17
lea ecx, [ebp - 0x2644]
call fcn.00402c10
push 0
push 0
push 0x19
lea ecx, [ebp - 0x2638]
call fcn.00402c10
push 0
push 0
push 0x18
lea ecx, [ebp - 0x2934]
call fcn.00402c10
push 1
push 0
push 0x28
lea ecx, [ebp - 0x2578]
call fcn.00402c10
lea ecx, [ebp - 0x2578]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x2220]
call fcn.00403bf0
lea ecx, [ebp - 0x2578]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x2184]
call fcn.00403bf0
push 1
push 0x58a87c
lea ecx, [ebp - 0x29a4]
call fcn.004022c0
lea ecx, [ebp - 0x2578]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x25e4]
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 - 0x2220]
call fcn.00402700
push eax
lea ecx, [ebp - 0x294c]
call fcn.00402310
lea ecx, [ebp - 0x2578]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x24c8]
call fcn.00403bf0
lea ecx, [ebp - 0x2578]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x26c8]
call fcn.00403bf0
lea ecx, [ebp - 0x2578]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x28a8]
call fcn.00403bf0
lea ecx, [ebp - 0x2578]
call fcn.004022a0
push eax
lea ecx, [ebp - 0x2958]
call fcn.00403bf0
push 2
push 1
lea ecx, [ebp - 0x25d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x291c]
call fcn.00404e70
push 1
lea ecx, [ebp - 0x27d4]
call fcn.00402870
lea eax, [ebp - 0x27d4]
push eax
lea ecx, [ebp - 0x2928]
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 - 0x26d4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x27d4]
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 - 0x26e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2928]
call fcn.004044a0
mov eax, dword [ebp - 0x6f44]
cmp byte [eax + 0x40], 0
je 0x4bd996
xor esi, esi
jmp 0x4d7e29
mov eax, dword [eax + 8]
push 3
push dword [eax + 0x34]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00438a00
mov eax, dword [ebp - 0x6f44]
push 0
push 0x58fd54
mov eax, dword [eax + 8]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00435c20
mov eax, dword [ebp - 0x6f44]
cmp dword [eax + 0x10], 0
jne 0x4bd9e6
mov ecx, eax
call fcn.004e0220
mov eax, dword [ebp - 0x6f44]
cmp dword [eax + 0x10], 1
jne 0x4bda11
mov esi, dword [0x55338c]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4bdaa1
push 0x64
call esi
mov eax, dword [ebp - 0x6f44]
cmp dword [eax + 0x10], 1
je 0x4bd9f2
mov eax, dword [eax + 8]
push 6
push dword [eax + 0x34]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00438a00
mov eax, dword [ebp - 0x6f44]
push 0
push 0x58fd84
mov eax, dword [eax + 8]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00435c20
mov esi, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x27a4]
add esi, 0x314
call fcn.00421430
push edx
push eax
mov ecx, esi
call fcn.004031b0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58fdb4
mov ecx, esi
call fcn.004044a0
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004e10a0
test eax, eax
jne 0x4bdaab
mov esi, 3
jmp 0x4d7e29
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.HKLM_
mov ecx, esi
call fcn.004044a0
push 4
lea ecx, [ebp - 0x1f74]
call fcn.004062b0
lea ecx, [ebp - 0x1f74]
call fcn.004097d0
push 4
lea ecx, [ebp - 0x254c]
mov byte [ebp - 4], 0x1e
call fcn.004062b0
push 0
push 0x20019
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x254c]
call fcn.004097e0
push 0xc
lea ecx, [ebp - 0x6cb4]
mov byte [ebp - 4], 0x1f
call fcn.00409750
lea ecx, [ebp - 0x6cb4]
call fcn.00409790
push 0xc
lea ecx, [ebp - 0x29e0]
mov byte [ebp - 4], 0x20
call fcn.00409750
lea ecx, [ebp - 0x29e0]
call fcn.00409790
push 0x10
lea ecx, [ebp - 0x2a2c]
mov byte [ebp - 4], 0x21
call fcn.00401a90
lea ecx, [ebp - 0x2a2c]
call fcn.00409770
push 0xc
lea ecx, [ebp - 0x1f8c]
mov byte [ebp - 4], 0x22
call fcn.00405e90
lea ecx, [ebp - 0x1f8c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2910]
mov byte [ebp - 4], 0x23
call fcn.00405e90
lea ecx, [ebp - 0x2910]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x1f80]
mov byte [ebp - 4], 0x24
call fcn.00405e90
lea ecx, [ebp - 0x1f80]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2584]
mov byte [ebp - 4], 0x25
call fcn.00405e90
lea ecx, [ebp - 0x2584]
call fcn.00401aa0
lea ecx, [ebp - 0x27a4]
mov byte [ebp - 4], 0x26
call fcn.00421430
mov ecx, edx
mov dword [ebp - 0x6ffc], eax
push ecx
mov dword [ebp - 0x7000], ecx
lea ecx, [ebp - 0x2910]
push eax
call fcn.004031b0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58a8a0
lea ecx, [ebp - 0x2910]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
push 0x58fdc4
lea ecx, [ecx + 0x134]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
lea ecx, [ecx + 0x11c]
call fcn.00402310
push 0x20
lea ecx, [ebp - 0x1fd4]
call fcn.0041aab0
lea ecx, [ebp - 0x1fd4]
call fcn.004164e0
mov ecx, dword [ebp - 0x6f44]
push 0
push 0x22
mov byte [ebp - 4], 0x27
lea ecx, [ecx + 0x11c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00416630
test eax, eax
je 0x4bde97
push 0
mov esi, dword [ebp - 0x6f44]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58fdd8
push 0
push 1
push 1
push 0
add esi, 0x32c
push 0x58fe08
mov ecx, esi
call fcn.00403db0
test eax, eax
mov edx, 0x58fe20
mov ecx, 0x58fe18
cmove ecx, edx
push ecx
mov ecx, esi
call fcn.00402700
push eax
push 0x58a904
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
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
mov ecx, esi
call fcn.00402700
push eax
push 0x5756bc
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x2584]
push 0
push dword [eax + 0xc]
call fcn.004031b0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
lea ecx, [ebp - 0x2584]
call fcn.00402700
push eax
push 0x58fe38
mov ecx, esi
call fcn.00402700
push eax
push 0x5756bc
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push edi
mov ecx, dword [ebp - 0x6f44]
lea eax, [ebp - 0x1f80]
push eax
call fcn.004dace0
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
cmp dword [ebp - 0x6f40], 0
mov ecx, 0x58fe78
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58ae78
mov eax, 0x578738
cmove eax, ecx
lea ecx, [ebp - 0x28b4]
push eax
push 0x58fe8c
push 0x58ae78
call fcn.00402700
push eax
push 0x58fec4
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea edx, [ebp - 0x1f80]
lea ecx, [ebp - 0x27a4]
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 - 0x1f80]
call fcn.00402700
push eax
push 0x58fef8
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push 0
push 0x58ff20
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
lea ecx, [ebp - 0x291c]
call fcn.00402700
lea ecx, [ebp - 0x25d8]
mov dword [ebp - 0x6fa0], eax
call fcn.00402700
lea ecx, [ebp - 0x27c8]
mov dword [ebp - 0x6f9c], eax
call fcn.00402700
mov dword [ebp - 0x6f98], eax
mov al, byte [ebp - 0x6f61]
mov byte [ebp - 0x6f94], al
mov eax, dword [ebp - 0x6f44]
movups xmm0, xmmword [ebp - 0x6fa0]
lea ecx, [eax + 0x2d0]
movups xmmword [eax + 0x17c], xmm0
call fcn.004eda10
mov esi, dword [ebp - 0x6f44]
add esi, 0x220
mov ecx, esi
call fcn.0044f290
mov ecx, dword [ebp - 0x6f44]
push 0
lea ecx, [ecx + 0x208]
call fcn.0044ecf0
push 0x587328
mov ecx, esi
call fcn.0044f0d0
push 1
mov ecx, esi
call fcn.00451770
mov eax, dword [ebp - 0x6f44]
xor ecx, ecx
test edi, edi
push 4
setne cl
inc ecx
add ecx, dword [eax + 0x30]
mov dword [ebp - 0x6f74], ecx
lea ecx, [ebp - 0x6d10]
call fcn.004062b0
push 8
push 0x5901d4
lea ecx, [ebp - 0x6d10]
call fcn.00401540
push 8
lea ecx, [ebp - 0x6dac]
mov byte [ebp - 4], 0x28
call fcn.00401750
mov edi, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x6dac]
mov eax, dword [edi + 0x30]
add eax, 2
push eax
call fcn.0051c330
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x2904]
mov edi, dword [ebp - 0x6dac]
push 0xc
mov dword [ebp - 0x6f70], edi
call fcn.00405e90
push 1
push 0x572d68
lea ecx, [ebp - 0x2904]
call fcn.00401b70
mov eax, dword [ebp - 0x6f44]
xor esi, esi
mov byte [ebp - 4], 0x2a
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x4be014
add eax, 0x114
mov dword [ebp - 0x6f94], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
mov ecx, edi
call fcn.00401ef0
mov eax, dword [ebp - 0x6f44]
inc esi
add edi, 0xc
mov ecx, dword [eax + 0x30]
mov eax, dword [ebp - 0x6f94]
cmp esi, ecx
jb 0x4bdfe0
mov edi, dword [ebp - 0x6f70]
lea eax, [ecx + ecx*2]
push 0x58aa90
lea ecx, [edi + eax*4]
call fcn.00401ef0
cmp dword [ebp - 0x6fa8], 0
je 0x4be047
mov eax, dword [ebp - 0x6f44]
push 0x58aa90
mov eax, dword [eax + 0x30]
inc eax
lea eax, [eax + eax*2]
lea ecx, [edi + eax*4]
call fcn.00401ef0
push 4
lea ecx, [ebp - 0x2548]
call fcn.004062b0
lea ecx, [ebp - 0x2548]
call fcn.004097d0
mov ecx, dword [ebp - 0x6f44]
mov byte [ebp - 4], 0x2b
call fcn.004e8ef0
test al, al
jne 0x4c0aa8
mov eax, dword [ebp - 0x6f44]
test dword [eax + 0x34], 0x400
jne 0x4c0aa8
push 0
push 0x590214
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [ebp - 0x6f44]
push 0
push 0x590244
mov eax, dword [eax + 8]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00435c20
push 8
lea ecx, [ebp - 0x6d1c]
call fcn.00401750
push dword [ebp - 0x6f74]
lea ecx, [ebp - 0x6d1c]
call fcn.0051c330
mov eax, dword [ebp - 0x6f44]
xor esi, esi
mov byte [ebp - 4], 0x2c
mov edi, dword [ebp - 0x6d1c]
mov dword [ebp - 0x6f68], edi
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x4be154
add eax, 0x104
mov dword [ebp - 0x6f94], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590270
push esi
mov ecx, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
mov ecx, edi
call fcn.00402310
mov eax, dword [ebp - 0x6f44]
inc esi
add edi, 0xc
mov ecx, dword [eax + 0x30]
mov eax, dword [ebp - 0x6f94]
cmp esi, ecx
jb 0x4be104
mov edi, dword [ebp - 0x6f68]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x582c40
push dword [ebp - 0x6f8c]
lea eax, [ecx + ecx*2]
lea ecx, [edi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4be1bb
mov eax, dword [ebp - 0x6f44]
push 0
push 0
push 0
mov eax, dword [eax + 0x30]
push 0
push 0
push 0
push 0
push 0
push 0
inc eax
push 0
push 0x582c40
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [edi + eax*4]
call fcn.00402310
push 4
lea ecx, [ebp - 0x2224]
call fcn.004062b0
lea ecx, [ebp - 0x2224]
call fcn.004097d0
push 4
lea ecx, [ebp - 0x1ff4]
mov byte [ebp - 4], 0x2d
call fcn.004062b0
lea ecx, [ebp - 0x1ff4]
call fcn.004097d0
push 0xc
lea ecx, [ebp - 0x23c8]
mov byte [ebp - 4], 0x2e
call fcn.00405e90
lea ecx, [ebp - 0x23c8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2130]
mov byte [ebp - 4], 0x2f
call fcn.00405e90
lea ecx, [ebp - 0x2130]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x1fa4]
mov byte [ebp - 4], 0x30
call fcn.00405e90
lea ecx, [ebp - 0x1fa4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2074]
mov byte [ebp - 4], 0x31
call fcn.00405e90
lea ecx, [ebp - 0x2074]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x23bc]
mov byte [ebp - 4], 0x32
call fcn.00405e90
lea ecx, [ebp - 0x23bc]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x22cc]
mov byte [ebp - 4], 0x33
call fcn.00405e90
lea ecx, [ebp - 0x22cc]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2154]
mov byte [ebp - 4], 0x34
call fcn.00405e90
lea ecx, [ebp - 0x2154]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2114]
mov byte [ebp - 4], 0x35
call fcn.00405e90
lea ecx, [ebp - 0x2114]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x22f0]
mov byte [ebp - 4], 0x36
call fcn.00405e90
lea ecx, [ebp - 0x22f0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2890]
mov byte [ebp - 4], 0x37
call fcn.00405e90
lea ecx, [ebp - 0x2890]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2784]
mov byte [ebp - 4], 0x38
call fcn.00405e90
lea ecx, [ebp - 0x2784]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x289c]
mov byte [ebp - 4], 0x39
call fcn.00405e90
lea ecx, [ebp - 0x289c]
call fcn.00401aa0
mov ecx, dword [ebp - 0x6f44]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
mov byte [ebp - 4], 0x3a
lea ecx, [ecx + 0x140]
push 0x58aa1c
mov dword [ebp - 0x2354], 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f8c]
call fcn.00402310
mov esi, dword [ebp - 0x2368]
xor edi, edi
mov dword [ebp - 0x6f4c], edi
mov dword [ebp - 0x6f6c], esi
cmp dword [ebp - 0x6f74], edi
jbe 0x4bf522
mov eax, dword [ebp - 0x6f44]
lea ecx, [eax + 0x314]
mov dword [ebp - 0x6f54], ecx
lea ecx, [eax + 0x10c]
mov dword [ebp - 0x6f40], ecx
jmp 0x4be3c9
mov eax, dword [ebp - 0x6f44]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4bf522
movd xmm1, edi
mov eax, edi
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x5a8620]
mov eax, dword [ebp - 0x6f74]
mulsd xmm1, qword [0x5a80c0]
movd xmm0, eax
shr eax, 0x1f
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x5a8620]
divsd xmm1, xmm0
addsd xmm1, qword [0x5a8080]
cvttsd2si eax, xmm1
push eax
mov eax, dword [ebp - 0x6f44]
mov eax, dword [eax + 8]
push dword [eax + 0x34]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00438a00
lea eax, [edi + edi*2]
shl eax, 2
mov dword [ebp - 0x6f7c], eax
add eax, dword [ebp - 0x6f68]
push 0
push 0x20019
mov ecx, eax
mov dword [ebp - 0x6f94], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x2224]
call fcn.00409800
test al, al
je 0x4bf50f
mov ecx, dword [ebp - 0x6f44]
xor esi, esi
mov dword [ebp - 0x6f6c], esi
call fcn.004e8ef0
test al, al
jne 0x4bf50f
lea eax, [ebp - 0x6cb4]
push eax
push esi
lea ecx, [ebp - 0x2224]
call fcn.00409e90
test al, al
je 0x4bf509
mov ecx, dword [ebp - 0x6f94]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x23c8]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x23c8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1ff4]
call fcn.00409800
test al, al
je 0x4bf4f5
lea eax, [ebp - 0x2130]
push eax
push 0x578090
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
je 0x4bf4f5
lea eax, [ebp - 0x6ccc]
push eax
push 0x5902dc
lea ecx, [ebp - 0x1ff4]
call fcn.00409bc0
test al, al
je 0x4be54c
cmp dword [ebp - 0x6ccc], 1
je 0x4bf4f5
lea eax, [ebp - 0x23bc]
push eax
push 0x5902fc
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
je 0x4be57a
lea ecx, [ebp - 0x23bc]
call fcn.004022a0
test eax, eax
jne 0x4bf4f5
lea eax, [ebp - 0x23bc]
push eax
push 0x590318
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
je 0x4be5f5
push 0x590330
lea ecx, [ebp - 0x23bc]
call fcn.00401fb0
test al, al
jne 0x4bf4f5
push 0x590340
lea ecx, [ebp - 0x23bc]
call fcn.00401fb0
test al, al
jne 0x4bf4f5
push 0x590350
lea ecx, [ebp - 0x23bc]
call fcn.00401fb0
test al, al
jne 0x4bf4f5
push 0x590364
lea ecx, [ebp - 0x23bc]
call fcn.00401fb0
test al, al
jne 0x4bf4f5
lea eax, [ebp - 0x1fa4]
push eax
push 0x590384
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
lea eax, [ebp - 0x22cc]
push eax
push 0x582cd8
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
jne 0x4be63a
lea ecx, [ebp - 0x1fa4]
call fcn.004022a0
test eax, eax
je 0x4bf4f5
lea eax, [ebp - 0x2154]
push eax
push 0x5903a4
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
je 0x4be664
lea ecx, [ebp - 0x2154]
call fcn.004022a0
test eax, eax
jne 0x4be674
push 0x58aa7c
lea ecx, [ebp - 0x2154]
call fcn.00401ef0
lea eax, [ebp - 0x2130]
push eax
lea ecx, [ebp - 0x2114]
call fcn.00401f00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x572d28
lea ecx, [ebp - 0x2114]
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0x5903b8
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
lea ecx, [ebp - 0x1f98]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
mov byte [ebp - 0x6f61], al
test al, al
jne 0x4be7d5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2114]
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0x5903b8
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
lea ecx, [ebp - 0x1f98]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
mov byte [ebp - 0x6f61], al
test al, al
jne 0x4be7d5
push 0
push 1
push 0xffffffffffffffff
push 1
push 0x5735d4
lea ecx, [ebp - 0x2114]
call fcn.00403db0
cmp eax, 4
jl 0x4be8f4
dec eax
lea ecx, [ebp - 0x2114]
push eax
call fcn.00403b50
cmp byte [eax + 8], 0
je 0x4be8e7
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2114]
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0x5903b8
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
lea ecx, [ebp - 0x1f98]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
mov byte [ebp - 0x6f61], al
test al, al
je 0x4be741
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x572d68
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2904]
call fcn.004040f0
cmp byte [ebp - 0x6f61], 0
jne 0x4be86a
lea eax, [ebp - 0x2354]
push eax
lea eax, [ebp - 0x2784]
push eax
lea ecx, [ebp - 0x23c8]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004e1dd0
test al, al
je 0x4bf4f5
push 0
lea ecx, [ebp - 0x23c8]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
lea eax, [ebp - 0x2784]
push eax
call fcn.004dd140
test al, al
je 0x4bf4f5
mov byte [ebp - 0x6f61], 2
mov ecx, dword [ebp - 0x6f44]
push 0
lea ecx, [ecx + 0x14c]
call fcn.00402700
push eax
push str.Programs
lea ecx, [ebp - 0x2130]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004dc2f0
test al, al
jne 0x4bf4f5
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4be996
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402b90
push 0
push 0
push 0x572c78
push 0x5735d0
lea ecx, [ebp - 0x1fa4]
call fcn.00404790
jmp 0x4bef6f
cmp byte [ebp - 0x6f61], 0
jne 0x4be7d5
lea ecx, [ebp - 0x2114]
call fcn.00402250
lea ecx, [ebp - 0x2130]
call fcn.004022a0
push 0
push 1
push 1
push 0
push 0x5903cc
lea ecx, [ebp - 0x2130]
call fcn.00403db0
test eax, eax
jne 0x4be978
push eax
push 1
push 1
push eax
push 0x5903e0
lea ecx, [ebp - 0x2130]
call fcn.00403db0
test eax, eax
jne 0x4be978
push eax
push 1
push 1
push eax
push 0x590404
lea ecx, [ebp - 0x2130]
call fcn.00403db0
test eax, eax
jne 0x4be978
push eax
push 1
push 1
push eax
push 0x590424
lea ecx, [ebp - 0x2130]
call fcn.00403db0
test eax, eax
je 0x4be80e
lea eax, [ebp - 0x2130]
mov byte [ebp - 0x6f61], 2
push eax
lea ecx, [ebp - 0x2114]
call fcn.00401f00
jmp 0x4be86a
cmp dword [ebp - 0x2354], 0
je 0x4bea58
lea eax, [ebp - 0x6ccc]
mov dword [ebp - 0x6ccc], 0x400
push eax
push 0
push 0
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
push eax
push 0x590384
push dword [ebp - 0x6cb4]
call dword [0x55387c]
push 0
push 1
push 1
push 0
push 0x5736bc
lea ecx, [ebp - 0x1fa4]
call fcn.00403db0
test eax, eax
jne 0x4bea58
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push 0x59044c
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x23bc]
push 0x590478
push dword [ebp - 0x6f8c]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x23bc]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4bea58
lea eax, [ebp - 0x1fa4]
push eax
push 0x590384
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
lea ecx, [ebp - 0x1fa4]
call fcn.004022a0
cmp eax, 0xa
jle 0x4bea75
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402b90
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
call dword [0x5534d4]
test eax, eax
jne 0x4bef6f
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push str.__0
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x26d4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bef6f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x26e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bef6f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x271c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bef6f
lea ecx, [ebp - 0x2154]
call fcn.004022a0
cmp eax, 4
jle 0x4bec85
push 0
push 1
push 1
push 0
push 0x59051c
lea ecx, [ebp - 0x2154]
call fcn.00403db0
cmp eax, 1
je 0x4bec85
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2154]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x271c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bef6f
mov eax, dword [ebp - 0x6f44]
cmp edi, dword [eax + 0x30]
jae 0x4beee7
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2220]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push edi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bef6f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2184]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push edi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bef6f
lea ecx, [ebp - 0x2154]
call fcn.004022a0
cmp eax, 4
jle 0x4beee7
push 0
push 1
push 1
push 0
push 0x59051c
lea ecx, [ebp - 0x2154]
call fcn.00403db0
cmp eax, 1
je 0x4beee7
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2154]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2220]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push edi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bef6f
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2154]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2184]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push edi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bef6f
lea ecx, [ebp - 0x22cc]
call fcn.004022a0
lea ecx, [ebp - 0x1fa4]
cmp eax, 0xa
jle 0x4bef6a
lea eax, [ebp - 0x22cc]
push eax
call fcn.00401f00
push 0
push 0
push 0x572c78
push 0x5735d0
lea ecx, [ebp - 0x1fa4]
call fcn.00404790
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402b90
push 0
push 1
push 0xffffffffffffffff
push 1
push 0x5736bc
lea ecx, [ebp - 0x1fa4]
call fcn.00403db0
cmp eax, 2
jle 0x4bef5b
add eax, 0xfffffffe
lea ecx, [ebp - 0x1fa4]
push eax
call fcn.00403bf0
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402950
jmp 0x4bef6f
call fcn.00402250
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
mov ecx, eax
call fcn.004122a0
test al, al
je 0x4bef90
lea ecx, [ebp - 0x1fa4]
call fcn.00402250
lea eax, [ebp - 0x2074]
mov dword [ebp - 0x6f6c], 0
push eax
push 0x582534
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
je 0x4befed
push 0
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
push 0x104
lea ecx, [ebp - 0x2074]
call fcn.00402cb0
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
call dword [0x5534f4]
mov dword [ebp - 0x6f6c], eax
jmp 0x4bf043
cmp dword [ebp - 0x2354], 0
je 0x4bf050
lea eax, [ebp - 0x6d30]
mov dword [ebp - 0x6d30], 0x400
push eax
push 0
push 0
push 0x400
lea ecx, [ebp - 0x2074]
call fcn.00402cb0
push eax
push 0x590534
push dword [ebp - 0x6cb4]
call dword [0x55387c]
push dword [ebp - 0x6d30]
lea ecx, [ebp - 0x2074]
call fcn.00402210
xor ecx, ecx
mov word [eax], cx
cmp dword [ebp - 0x2354], 0
jne 0x4bf19a
lea ecx, [ebp - 0x2074]
call fcn.004022a0
test eax, eax
jne 0x4bf19a
push eax
lea ecx, [ebp - 0x22cc]
call fcn.00402700
push eax
push 0x800
lea ecx, [ebp - 0x2074]
call fcn.00402cb0
push 0x800
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
lea ecx, [ebp - 0x22cc]
call fcn.00402700
push eax
call dword [0x55340c]
lea ecx, [ebp - 0x2074]
call fcn.004022a0
test eax, eax
je 0x4bf19a
push 0
push 1
push 0xffffffffffffffff
push 0
push str..exe
lea ecx, [ebp - 0x2074]
call fcn.00403db0
test eax, eax
je 0x4bf0e1
add eax, 3
lea ecx, [ebp - 0x2074]
push eax
call fcn.00403b50
lea ecx, [ebp - 0x2074]
call fcn.00402700
mov edi, dword [0x5534e8]
push eax
call edi
test eax, eax
jne 0x4bf19a
push eax
push 1
push 0xffffffffffffffff
push 1
push 0x5736bc
lea ecx, [ebp - 0x2074]
call fcn.00403db0
cmp eax, 2
jle 0x4bf128
add eax, 0xfffffffe
lea ecx, [ebp - 0x2074]
push eax
call fcn.00403bf0
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
call edi
test eax, eax
jne 0x4bf19a
push eax
push 1
push 0xffffffffffffffff
push 1
push 0x5735d0
lea ecx, [ebp - 0x2074]
call fcn.00403db0
test eax, eax
je 0x4bf161
push eax
lea ecx, [ebp - 0x2074]
call fcn.00403bf0
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
call edi
test eax, eax
jne 0x4bf19a
push eax
push 1
push 0xffffffffffffffff
push 1
push 0x5735d4
lea ecx, [ebp - 0x2074]
call fcn.00403db0
test eax, eax
je 0x4bf19a
push eax
lea ecx, [ebp - 0x2074]
call fcn.00403bf0
push 0x5c
lea ecx, [ebp - 0x1fa4]
call fcn.00404c20
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x2130]
push 0
mov eax, dword [eax + 8]
push dword [eax + 0xa0]
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
call fcn.00402700
push eax
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.004374a0
mov edi, eax
cmp edi, 0xffffffff
je 0x4bf4ef
push 1
lea ecx, [ebp - 0x2154]
call fcn.00402700
push eax
mov eax, dword [ebp - 0x6f44]
push edi
mov ecx, dword [eax + 8]
push dword [ecx + 0xa0]
mov ecx, dword [eax + 4]
call fcn.00438820
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4bf255
push 0
push 0x10
push dword [ebp - 0x6f6c]
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
mov eax, dword [ebp - 0x6f44]
push edi
mov eax, dword [eax + 8]
push dword [eax + 0xa0]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00437fb0
mov ecx, dword [ebp - 0x6f70]
add ecx, dword [ebp - 0x6f7c]
push 2
call fcn.00402700
push eax
mov eax, dword [ebp - 0x6f44]
push edi
mov eax, dword [eax + 8]
push dword [eax + 0xa0]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00438820
mov eax, dword [ebp - 0x6f44]
push edi
push edi
mov eax, dword [eax + 8]
push dword [eax + 0xa0]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00437d80
lea ecx, [ebp - 0x2114]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
mov eax, dword [ebp - 0x6f44]
push edi
mov eax, dword [eax + 8]
push dword [eax + 0xa0]
call fcn.004da960
test eax, eax
jne 0x4bf2ed
cmp byte [ebp - 0x6f61], 1
mov ecx, 2
movzx eax, byte [ebp - 0x6f61]
cmove eax, ecx
mov byte [ebp - 0x6f61], al
push edi
lea ecx, [ebp - 0x22f0]
call fcn.00403350
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x23c8]
call fcn.00402700
push eax
push 0x589e3c
lea ecx, [ebp - 0x22f0]
call fcn.00402700
mov edi, dword [0x553424]
push eax
call edi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x5786f0
lea ecx, [ebp - 0x22f0]
call fcn.00402700
push eax
call edi
lea ecx, [ebp - 0x2114]
call fcn.004022a0
test eax, eax
je 0x4bf3b3
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x58aa54
lea ecx, [ebp - 0x22f0]
call fcn.00402700
push eax
call edi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
push 0x574998
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x59054c
call edi
lea ecx, [ebp - 0x22cc]
call fcn.004022a0
test eax, eax
je 0x4bf3ed
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x22cc]
call fcn.00402700
push eax
push 0x58aa30
lea ecx, [ebp - 0x22f0]
call fcn.00402700
push eax
call edi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f70]
add ecx, dword [ebp - 0x6f7c]
push eax
call fcn.00402700
push eax
push 0x589e58
lea ecx, [ebp - 0x22f0]
call fcn.00402700
push eax
call edi
cmp dword [ebp - 0x2354], 0
je 0x4bf44c
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x22f0]
push 0x58aa64
call fcn.00402700
push eax
call edi
mov eax, dword [ebp - 0x6f44]
mov ecx, 0x59058c
mov edi, dword [ebp - 0x6f44]
push 0
push 0
inc dword [eax + 0x24]
xor eax, eax
cmp byte [ebp - 0x6f61], 1
sete al
add dword [edi + 0x28], eax
mov eax, 0x590578
cmp byte [ebp - 0x6f61], 1
cmovne eax, ecx
mov ecx, dword [ebp - 0x6f70]
add ecx, dword [ebp - 0x6f7c]
push eax
push 0x58fc54
call fcn.00402700
push eax
push 0x5905a4
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x5905c8
lea ecx, [ebp - 0x23c8]
call fcn.00402700
push eax
push 0x5905ec
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x590614
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov edi, dword [ebp - 0x6f4c]
mov ecx, dword [ebp - 0x6f44]
inc esi
call fcn.004e8ef0
test al, al
je 0x4be490
mov dword [ebp - 0x6f6c], esi
inc edi
mov dword [ebp - 0x6f4c], edi
cmp edi, dword [ebp - 0x6f74]
jb 0x4be3c3
mov ecx, dword [ebp - 0x6f44]
call fcn.004e8ef0
test al, al
je 0x4bf5e3
lea ecx, [ebp - 0x289c]
call fcn.00402240
lea ecx, [ebp - 0x2784]
call fcn.00402240
lea ecx, [ebp - 0x2890]
call fcn.00402240
lea ecx, [ebp - 0x22f0]
call fcn.00402240
lea ecx, [ebp - 0x2114]
call fcn.00402240
lea ecx, [ebp - 0x2154]
call fcn.00402240
lea ecx, [ebp - 0x22cc]
call fcn.00402240
lea ecx, [ebp - 0x23bc]
call fcn.00402240
lea ecx, [ebp - 0x2074]
call fcn.00402240
lea ecx, [ebp - 0x1fa4]
call fcn.00402240
lea ecx, [ebp - 0x2130]
call fcn.00402240
lea ecx, [ebp - 0x23c8]
call fcn.00402240
lea ecx, [ebp - 0x1ff4]
call fcn.00409840
lea ecx, [ebp - 0x2224]
call fcn.00409840
lea ecx, [ebp - 0x6d1c]
mov byte [ebp - 4], 0x2b
call fcn.0051c290
jmp 0x4c0ab4
mov eax, dword [ebp - 0x6f44]
cmp dword [eax + 0x208], 0
je 0x4bf611
mov ecx, dword [ebp - 0x6f44]
add eax, 0x208
push 0
push eax
lea ecx, [ecx + 0x220]
call fcn.00451880
mov eax, dword [ebp - 0x6f44]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4bf535
push 0xc
lea ecx, [ebp - 0x29b0]
call fcn.00405e90
lea ecx, [ebp - 0x29b0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x26ec]
mov byte [ebp - 4], 0x3b
call fcn.00405e90
lea ecx, [ebp - 0x26ec]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x26f8]
mov byte [ebp - 4], 0x3c
call fcn.00405e90
lea ecx, [ebp - 0x26f8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x27bc]
mov byte [ebp - 4], 0x3d
call fcn.00405e90
lea ecx, [ebp - 0x27bc]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x279c]
mov byte [ebp - 4], 0x3e
call fcn.00405e90
lea ecx, [ebp - 0x279c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2754]
mov byte [ebp - 4], 0x3f
call fcn.00405e90
lea ecx, [ebp - 0x2754]
call fcn.00401aa0
mov eax, dword [ebp - 0x6f44]
mov edi, 1
mov byte [ebp - 4], 0x40
lea ecx, [eax + 0x30c]
mov dword [ebp - 0x6f54], edi
mov dword [ebp - 0x6f94], ecx
cmp dword [ecx], edi
jbe 0x4c041f
mov esi, dword [ebp - 0x6f94]
lea ecx, [eax + 0x314]
mov dword [ebp - 0x6f7c], ecx
nop
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4c0413
lea eax, [edi + edi*4]
xor edx, edx
add eax, eax
div dword [esi]
add eax, 0x10
movd xmm0, eax
shr eax, 0x1f
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x5a8620]
cvttsd2si eax, xmm0
push eax
mov eax, dword [ebp - 0x6f44]
mov eax, dword [eax + 8]
push dword [eax + 0x34]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00438a00
mov ecx, dword [ebp - 0x6f44]
push edi
call fcn.004dded0
test al, al
je 0x4c03fe
mov ecx, dword [ebp - 0x6f44]
push edi
lea ecx, [ecx + 0x2e8]
call fcn.0051bc60
push eax
lea ecx, [ebp - 0x23c8]
call fcn.00401f00
push 0
push 0x20019
lea ecx, [ebp - 0x23c8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1ff4]
call fcn.00409800
test al, al
je 0x4c03fe
lea eax, [ebp - 0x2130]
push eax
push 0x578090
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
je 0x4c03fe
lea eax, [ebp - 0x1fa4]
push eax
push 0x590384
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
lea eax, [ebp - 0x22cc]
push eax
push 0x582cd8
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
jne 0x4bf80a
lea ecx, [ebp - 0x1fa4]
call fcn.004022a0
test eax, eax
je 0x4c03fe
lea eax, [ebp - 0x2154]
push eax
push 0x5903a4
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
je 0x4bf834
lea ecx, [ebp - 0x2154]
call fcn.004022a0
test eax, eax
jne 0x4bf844
push 0x58aa7c
lea ecx, [ebp - 0x2154]
call fcn.00401ef0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x57ab2c
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
lea ecx, [ebp - 0x279c]
call fcn.004040f0
push 0
push 1
push 1
push 0
push str.msiexec
lea ecx, [ebp - 0x22cc]
call fcn.00403db0
test eax, eax
setne byte [ebp - 0x6f40]
test eax, eax
jne 0x4bf8d2
lea eax, [ebp - 0x6ccc]
push eax
push 0x590640
lea ecx, [ebp - 0x1ff4]
call fcn.00409bc0
test al, al
je 0x4bf8d2
mov eax, dword [ebp - 0x6f40]
mov ecx, 1
cmp dword [ebp - 0x6ccc], 1
movzx eax, al
cmove eax, ecx
mov dword [ebp - 0x6f40], eax
lea eax, [ebp - 0x2130]
push eax
lea ecx, [ebp - 0x2114]
call fcn.00401f00
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4bf925
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402b90
push 0
push 0
push 0x572c78
push 0x5735d0
lea ecx, [ebp - 0x1fa4]
call fcn.00404790
jmp 0x4bff4d
cmp byte [ebp - 0x6f40], 0
je 0x4bf9e7
lea eax, [ebp - 0x6ccc]
mov dword [ebp - 0x6ccc], 0x400
push eax
push 0
push 0
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
push eax
push 0x590384
push dword [ebp - 0x6cb4]
call dword [0x55387c]
push 0
push 1
push 1
push 0
push 0x5736bc
lea ecx, [ebp - 0x1fa4]
call fcn.00403db0
test eax, eax
jne 0x4bf9e7
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push 0x59044c
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x23bc]
push 0x590478
push dword [ebp - 0x6f8c]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x23bc]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4bf9e7
lea eax, [ebp - 0x1fa4]
push eax
push 0x590384
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
lea ecx, [ebp - 0x1fa4]
call fcn.004022a0
cmp eax, 0xa
jle 0x4bfa04
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402b90
push 0
push 1
push 1
push 0
push 0x5736bc
lea ecx, [ebp - 0x1fa4]
call fcn.00403db0
test eax, eax
jne 0x4bff4d
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push str.__0
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x26d4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bff4d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x26e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bff4d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x271c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bff4d
lea ecx, [ebp - 0x2154]
call fcn.004022a0
cmp eax, 4
jle 0x4bfc1a
push 0
push 1
push 1
push 0
push 0x59051c
lea ecx, [ebp - 0x2154]
call fcn.00403db0
cmp eax, 1
je 0x4bfc1a
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2154]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x271c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bff4d
push 1
push 0x5755f4
push dword [ebp - 0x6d10]
lea ecx, [ebp - 0x23c8]
push 1
call fcn.00402700
push eax
lea ecx, [ebp - 0x27bc]
call fcn.004022c0
mov ecx, eax
call fcn.004057a0
test eax, eax
je 0x4bfebc
lea ecx, [ebp - 0x27bc]
call fcn.00402700
lea edx, [ebp - 0x26ec]
mov ecx, eax
call fcn.004412f0
test al, al
je 0x4bfebc
lea ecx, [ebp - 0x27bc]
call fcn.00402700
lea edx, [ebp - 0x26f8]
mov ecx, eax
call fcn.0043f9a0
test al, al
je 0x4bfebc
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2220]
call fcn.00402700
push eax
lea ecx, [ebp - 0x26f8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bfecc
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2184]
call fcn.00402700
push eax
lea ecx, [ebp - 0x26f8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bfecc
lea ecx, [ebp - 0x2154]
call fcn.004022a0
cmp eax, 4
jle 0x4bfecc
push 0
push 1
push 1
push 0
push 0x59051c
lea ecx, [ebp - 0x2154]
call fcn.00403db0
cmp eax, 1
je 0x4bfecc
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2154]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2220]
call fcn.00402700
push eax
lea ecx, [ebp - 0x26f8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
test al, al
jne 0x4bfecc
push 0
push 0
push 0
push 0
push 0
push str.__0
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2154]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2184]
call fcn.00402700
push eax
lea ecx, [ebp - 0x26f8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402310
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x400
lea ecx, [ebp - 0x1fa4]
call fcn.00402cb0
mov edx, 0x400
mov ecx, eax
call fcn.00419820
jmp 0x4bfecc
push 0x58aa90
lea ecx, [ebp - 0x26ec]
call fcn.00401ef0
lea ecx, [ebp - 0x22cc]
call fcn.004022a0
cmp eax, 0xa
jle 0x4bff4d
lea eax, [ebp - 0x22cc]
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00401f00
push 0
push 0
push 0x572c78
push 0x5735d0
lea ecx, [ebp - 0x1fa4]
call fcn.00404790
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402b90
push 0
push 1
push 0xffffffffffffffff
push 1
push 0x5736bc
lea ecx, [ebp - 0x1fa4]
call fcn.00403db0
cmp eax, 2
jle 0x4bff40
add eax, 0xfffffffe
lea ecx, [ebp - 0x1fa4]
push eax
call fcn.00403bf0
push 0
lea ecx, [ebp - 0x1fa4]
call fcn.00402950
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
mov ecx, eax
call fcn.004122a0
test al, al
je 0x4bff6e
lea ecx, [ebp - 0x1fa4]
call fcn.00402250
lea eax, [ebp - 0x2074]
xor edi, edi
push eax
push 0x582534
lea ecx, [ebp - 0x1ff4]
call fcn.004099d0
test al, al
je 0x4c0475
push edi
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
push 0x104
lea ecx, [ebp - 0x2074]
call fcn.00402cb0
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
call dword [0x5534f4]
cmp byte [ebp - 0x6f40], 0
mov edi, eax
jne 0x4c011d
lea ecx, [ebp - 0x2074]
call fcn.004022a0
test eax, eax
jne 0x4c011d
push eax
lea ecx, [ebp - 0x22cc]
call fcn.00402700
push eax
push 0x800
lea ecx, [ebp - 0x2074]
call fcn.00402cb0
push 0x800
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
lea ecx, [ebp - 0x22cc]
call fcn.00402700
push eax
call dword [0x55340c]
lea ecx, [ebp - 0x2074]
call fcn.004022a0
test eax, eax
je 0x4c011d
push 0
push 1
push 0xffffffffffffffff
push 0
push str..exe
lea ecx, [ebp - 0x2074]
call fcn.00403db0
test eax, eax
je 0x4c005e
add eax, 3
lea ecx, [ebp - 0x2074]
push eax
call fcn.00403b50
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
jne 0x4c011d
push eax
push 1
push 0xffffffffffffffff
push 1
push 0x5736bc
lea ecx, [ebp - 0x2074]
call fcn.00403db0
cmp eax, 2
jle 0x4c00a3
add eax, 0xfffffffe
lea ecx, [ebp - 0x2074]
push eax
call fcn.00403bf0
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
jne 0x4c011d
push eax
push 1
push 0xffffffffffffffff
push 1
push 0x5735d0
lea ecx, [ebp - 0x2074]
call fcn.00403db0
test eax, eax
je 0x4c00e0
push eax
lea ecx, [ebp - 0x2074]
call fcn.00403bf0
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
jne 0x4c011d
push eax
push 1
push 0xffffffffffffffff
push 1
push 0x5735d4
lea ecx, [ebp - 0x2074]
call fcn.00403db0
test eax, eax
je 0x4c011d
push eax
lea ecx, [ebp - 0x2074]
call fcn.00403bf0
push 0x5c
lea ecx, [ebp - 0x1fa4]
call fcn.00404c20
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2114]
mov byte [ebp - 0x6f4c], 1
call fcn.00402700
mov ecx, dword [ebp - 0x6f7c]
push eax
push 0x5903b8
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
lea eax, [ebp - 0x6ccc]
push eax
push 0x590664
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4c01c2
mov eax, dword [ebp - 0x6f4c]
mov ecx, 2
cmp dword [ebp - 0x6ccc], 0
movzx eax, al
cmove eax, ecx
mov dword [ebp - 0x6f4c], eax
push edi
lea ecx, [ebp - 0x2074]
call fcn.00402700
push eax
xor eax, eax
lea ecx, [ebp - 0x26ec]
cmp byte [ebp - 0x6f4c], 1
push 0
sete al
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x2154]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2130]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
mov eax, dword [ebp - 0x6f44]
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [eax + 8]
push dword [eax + 0xa0]
call fcn.004adef0
push eax
lea ecx, [ebp - 0x22f0]
call fcn.00403350
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x23c8]
call fcn.00402700
push eax
push 0x589e3c
lea ecx, [ebp - 0x22f0]
call fcn.00402700
mov edi, dword [0x553424]
push eax
call edi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x5786f0
lea ecx, [ebp - 0x22f0]
call fcn.00402700
push eax
call edi
lea ecx, [ebp - 0x2114]
call fcn.004022a0
test eax, eax
je 0x4c02e6
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x58aa54
lea ecx, [ebp - 0x22f0]
call fcn.00402700
push eax
call edi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
push 0x574998
lea ecx, [ebp - 0x2114]
call fcn.00402700
push eax
push 0x59054c
call edi
lea ecx, [ebp - 0x22cc]
call fcn.004022a0
test eax, eax
je 0x4c0320
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x22cc]
call fcn.00402700
push eax
push 0x58aa30
lea ecx, [ebp - 0x22f0]
call fcn.00402700
push eax
call edi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x26ec]
call fcn.00402700
push eax
push 0x589e58
lea ecx, [ebp - 0x22f0]
call fcn.00402700
push eax
call edi
cmp byte [ebp - 0x6f40], 0
je 0x4c0379
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x22f0]
push 0x58aa64
call fcn.00402700
push eax
call edi
cmp byte [ebp - 0x6f4c], 1
mov ecx, 0x59058c
push 0
push 0
mov eax, 0x590578
cmovne eax, ecx
lea ecx, [ebp - 0x26ec]
push eax
push 0x58fc54
call fcn.00402700
push eax
push 0x5905a4
lea ecx, [ebp - 0x1fa4]
call fcn.00402700
push eax
push 0x5905c8
lea ecx, [ebp - 0x23c8]
call fcn.00402700
push eax
push 0x5905ec
lea ecx, [ebp - 0x2130]
call fcn.00402700
push eax
push 0x590614
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov edi, dword [ebp - 0x6f54]
mov eax, dword [ebp - 0x6f44]
inc edi
mov dword [ebp - 0x6f54], edi
cmp edi, dword [esi]
jb 0x4bf700
mov eax, dword [ebp - 0x6f44]
mov esi, dword [ebp - 0x6f6c]
mov ecx, eax
call fcn.004e8ef0
test al, al
je 0x4c04d4
lea ecx, [ebp - 0x2754]
call fcn.00402240
lea ecx, [ebp - 0x279c]
call fcn.00402240
lea ecx, [ebp - 0x27bc]
call fcn.00402240
lea ecx, [ebp - 0x26f8]
call fcn.00402240
lea ecx, [ebp - 0x26ec]
call fcn.00402240
lea ecx, [ebp - 0x29b0]
call fcn.00402240
jmp 0x4bf535
cmp byte [ebp - 0x6f40], 0
je 0x4bffcd
lea eax, [ebp - 0x6d2c]
mov dword [ebp - 0x6d2c], 0x400
push eax
push 0
push 0
push 0x400
lea ecx, [ebp - 0x2074]
call fcn.00402cb0
push eax
push 0x590534
push dword [ebp - 0x6cb4]
call dword [0x55387c]
push dword [ebp - 0x6d2c]
lea ecx, [ebp - 0x2074]
call fcn.00402210
xor ecx, ecx
mov word [eax], cx
jmp 0x4c011d
lea ecx, [ebp - 0x279c]
call fcn.004022a0
cmp eax, 6
jle 0x4c0591
push 0x2000
lea eax, [ebp - 0x6dbc]
mov dword [ebp - 0x6dbc], 0x1000
push eax
push 0
push 0
push 0x1000
lea ecx, [ebp - 0x2754]
call fcn.00402cb0
push eax
lea ecx, [ebp - 0x279c]
call fcn.00402700
push eax
call dword [0x5534d8]
test eax, eax
je 0x4c053b
lea eax, [ebp - 0x279c]
push eax
lea ecx, [ebp - 0x2754]
call fcn.00401f00
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590680
lea ecx, [ebp - 0x2754]
call fcn.004044a0
push 0
push 0
push 0x577c34
push 0x574e70
push 6
lea ecx, [ebp - 0x2754]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.004479a0
push eax
lea ecx, [ebp - 0x2548]
call fcn.0044d760
mov eax, dword [ebp - 0x6f44]
push 0x1e
mov eax, dword [eax + 8]
push dword [eax + 0x34]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00438a00
mov eax, dword [ebp - 0x6f44]
push 0
push 0x590700
mov eax, dword [eax + 8]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.00435c20
push 0xc
lea ecx, [ebp - 0x2360]
call fcn.00405e90
lea ecx, [ebp - 0x2360]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x24e0]
mov byte [ebp - 4], 0x41
call fcn.00405e90
lea ecx, [ebp - 0x24e0]
call fcn.00401aa0
mov ecx, dword [ebp - 0x6f44]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590734
lea ecx, [ecx + 0x314]
mov byte [ebp - 4], 0x42
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 4
lea ecx, [ebp - 0x2368]
call fcn.004062b0
lea ecx, [ebp - 0x2368]
call fcn.004097d0
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
mov byte [ebp - 4], 0x43
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c0a82
lea eax, [ebp - 0x6cb4]
mov dword [ebp - 0x6f7c], 0
push eax
push 0
lea ecx, [ebp - 0x1f74]
call fcn.00409e90
test al, al
je 0x4c0a82
mov eax, dword [ebp - 0x6f44]
lea ecx, [eax + 0x10c]
mov dword [ebp - 0x6f54], ecx
jmp 0x4c06c6
mov eax, dword [ebp - 0x6f44]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4c0a82
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x572d68
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x24e0]
push 0x572d68
call fcn.00402310
push 0
push 1
push 1
push 0
lea ecx, [ebp - 0x24e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2904]
call fcn.00403db0
test eax, eax
jne 0x4c0a5a
mov ecx, dword [ebp - 0x6f44]
push eax
lea ecx, [ecx + 0x14c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
push str.Programs
push dword [ebp - 0x6cb4]
call fcn.004dc2f0
test al, al
jne 0x4c0a5a
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x24e0]
xor edi, edi
call fcn.00401ef0
push 0x590744
lea ecx, [ebp - 0x24e0]
call fcn.004020e0
test al, al
je 0x4c079c
push edi
push edi
push edi
push edi
push edi
push edi
push edi
push edi
push edi
push edi
push edi
push str.__0
lea ecx, [ebp - 0x24e0]
call fcn.004040f0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24e0]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x26d4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2360]
call fcn.00402310
lea ecx, [ebp - 0x2360]
call fcn.00419650
test al, al
je 0x4c080e
push esi
push 0
lea eax, [ebp - 0x1fd4]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2360]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004d9e30
mov edi, eax
cmp dword [ebp - 0x6fa8], 0
je 0x4c088d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24e0]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x26e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2360]
call fcn.00402310
lea ecx, [ebp - 0x2360]
call fcn.00419650
test al, al
je 0x4c088d
push esi
push 0
lea eax, [ebp - 0x1fd4]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2360]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004d9e30
add edi, eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24e0]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x271c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2360]
call fcn.00402310
lea ecx, [ebp - 0x2360]
call fcn.00419650
test al, al
je 0x4c08ff
push esi
push 0
lea eax, [ebp - 0x1fd4]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2360]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004d9e30
add edi, eax
mov eax, dword [ebp - 0x6f44]
xor esi, esi
mov dword [ebp - 0x6f6c], esi
cmp dword [eax + 0x30], esi
jbe 0x4c0a34
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24e0]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2220]
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x2360]
call fcn.00402310
lea ecx, [ebp - 0x2360]
call fcn.00419650
test al, al
je 0x4c099a
push esi
push 0
lea eax, [ebp - 0x1fd4]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2360]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004d9e30
add edi, eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24e0]
call fcn.00402700
push eax
push 0x572c70
lea ecx, [ebp - 0x2184]
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x2360]
call fcn.00402310
lea ecx, [ebp - 0x2360]
call fcn.00419650
test al, al
je 0x4c0a1e
push esi
push 0
lea eax, [ebp - 0x1fd4]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2360]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004d9e30
add edi, eax
mov eax, dword [ebp - 0x6f44]
inc esi
cmp esi, dword [eax + 0x30]
jb 0x4c0916
mov dword [ebp - 0x6f6c], esi
test edi, edi
jle 0x4c0a5a
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
push 0x574998
push dword [ebp - 0x6cb4]
push 0x59054c
call dword [0x553424]
mov eax, dword [ebp - 0x6f7c]
lea ecx, [ebp - 0x6cb4]
inc eax
push ecx
push eax
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f7c], eax
call fcn.00409e90
test al, al
jne 0x4c06c0
lea ecx, [ebp - 0x2368]
call fcn.00409840
lea ecx, [ebp - 0x24e0]
call fcn.00402240
lea ecx, [ebp - 0x2360]
call fcn.00402240
jmp 0x4c042e
mov eax, dword [ebp - 0x2368]
mov dword [ebp - 0x6f6c], eax
push 8
lea ecx, [ebp - 0x6dcc]
call fcn.00401750
mov edi, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x6dcc]
mov eax, dword [edi + 0x30]
add eax, 2
push eax
call fcn.0051c330
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0x2148]
mov esi, dword [ebp - 0x6dcc]
push 0xc
mov dword [ebp - 0x6f68], esi
call fcn.00405e90
lea ecx, [ebp - 0x2148]
call fcn.00401aa0
mov ecx, edi
mov byte [ebp - 4], 0x45
call fcn.004e8ef0
test al, al
mov eax, edi
jne 0x4c3395
test dword [eax + 0x34], 0x400
jne 0x4c3395
push 0
push 0x590758
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x590788
push dword [eax + 0x38]
call fcn.00435c20
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x23
push dword [eax + 0x34]
call fcn.00438a00
mov eax, edi
xor esi, esi
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x4c0bc0
mov edi, dword [ebp - 0x6f68]
add eax, 0x104
mov dword [ebp - 0x6f94], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5907b8
push esi
mov ecx, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
mov ecx, edi
call fcn.00402310
mov eax, dword [ebp - 0x6f44]
inc esi
add edi, 0xc
mov ecx, dword [eax + 0x30]
mov eax, dword [ebp - 0x6f94]
cmp esi, ecx
jb 0x4c0b76
mov esi, dword [ebp - 0x6f68]
lea eax, [ecx + ecx*2]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590818
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
mov edi, dword [ebp - 0x6f44]
je 0x4c0c2d
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 0x590818
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
push 0xc
lea ecx, [ebp - 0x209c]
call fcn.00405e90
lea ecx, [ebp - 0x209c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x23e0]
mov byte [ebp - 4], 0x46
call fcn.00405e90
lea ecx, [ebp - 0x23e0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x27ec]
mov byte [ebp - 4], 0x47
call fcn.00405e90
lea ecx, [ebp - 0x27ec]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x21b4]
mov byte [ebp - 4], 0x48
call fcn.00405e90
lea ecx, [ebp - 0x21b4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2314]
mov byte [ebp - 4], 0x49
call fcn.00405e90
lea ecx, [ebp - 0x2314]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x255c]
mov byte [ebp - 4], 0x4a
call fcn.00405e90
lea ecx, [ebp - 0x255c]
call fcn.00401aa0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590878
push 0x572c70
lea ecx, [edi + 0x140]
mov byte [ebp - 4], 0x4b
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f8c]
call fcn.00402310
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa4]
call fcn.004378e0
push 0
push 0x590890
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
xor esi, esi
mov dword [ebp - 0x6f54], esi
cmp dword [ebp - 0x6f74], esi
jbe 0x4c10ce
mov eax, dword [ebp - 0x6f44]
mov edi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f40], edi
lea ecx, [eax + 0x10c]
mov dword [ebp - 0x6f94], ecx
lea ecx, [eax + 0x17c]
mov dword [ebp - 0x6f48], ecx
mov ecx, dword [ebp - 0x6f68]
sub ecx, edi
mov dword [ebp - 0x6f4c], ecx
jmp 0x4c0d86
mov eax, dword [ebp - 0x6f44]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4c10ce
mov eax, dword [ebp - 0x6f44]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
cmp esi, dword [eax + 0x30]
jae 0x4c0dd0
lea ecx, [ebp - 0x26c8]
call fcn.00402700
mov ecx, dword [ebp - 0x6f94]
push eax
push esi
call fcn.0051c270
mov ecx, eax
jmp 0x4c0ddb
push str._temp
lea ecx, [ebp - 0x25d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x23e0]
call fcn.00402310
mov eax, dword [ebp - 0x6f4c]
add eax, edi
push 0
push 0x20019
mov ecx, eax
mov dword [ebp - 0x6f7c], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c10b2
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409f10
test al, al
je 0x4c10ac
nop
mov ecx, dword [ebp - 0x6f44]
call fcn.004e8ef0
test al, al
jne 0x4c10a6
mov eax, dword [ebp - 0x6cb4]
cmp word [eax], 0
je 0x4c108a
mov ecx, dword [ebp - 0x6f44]
push 0
lea ecx, [ecx + 0x14c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
push 0x587bdc
push dword [ebp - 0x6cb4]
call fcn.004dc2f0
test al, al
jne 0x4c108a
lea eax, [ebp - 0x209c]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c108a
mov edx, dword [ebp - 0x6f48]
lea ecx, [ebp - 0x209c]
push 3
xor edi, edi
call fcn.0040e0d0
test al, al
je 0x4c0f4f
push edi
push 1
push 1
push edi
lea ecx, [ebp - 0x23e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x209c]
call fcn.00403db0
mov ecx, dword [ebp - 0x6f7c]
mov edi, eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
push 0x577640
call fcn.00402700
push eax
lea ecx, [ebp - 0x2148]
call fcn.00402310
push 0
lea ecx, [ebp - 0x2148]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
lea eax, [ebp - 0x209c]
push eax
call fcn.004dd140
test al, al
mov eax, 1
cmovne edi, eax
push 0
lea ecx, [ebp - 0x209c]
call fcn.00402700
push eax
push 0
push edi
lea ecx, [ebp - 0x209c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
push dword [ebp - 0x6cb4]
mov eax, dword [ebp - 0x6f44]
push 0xffffffffffffffff
push 0xb
mov eax, dword [eax + 8]
push dword [eax + 0xa4]
call fcn.004adef0
mov dword [ebp - 0x6f6c], eax
cmp eax, 0xffffffff
je 0x4c1084
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x209c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f7c]
push eax
call fcn.00402700
push eax
push 0xb
push dword [ebp - 0x6f6c]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004ae070
lea eax, [ebp - 0x209c]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
push 0
push 0
push 0
test edi, edi
mov ecx, 0x58fc3c
push 0x574098
mov eax, 0x578738
cmove eax, ecx
lea ecx, [ebp - 0x209c]
push eax
push 0x58fc54
call fcn.00402700
mov edi, dword [ebp - 0x6f40]
mov ecx, edi
push eax
push 0x5908d4
call fcn.00402700
push eax
push 0x58fcb4
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x1f80]
push 0x5908f0
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4c108a
mov edi, dword [ebp - 0x6f40]
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
call fcn.00409f10
test al, al
jne 0x4c0e40
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f54]
inc esi
add edi, 0xc
mov dword [ebp - 0x6f54], esi
mov dword [ebp - 0x6f40], edi
cmp esi, dword [ebp - 0x6f74]
jb 0x4c0d80
mov ecx, dword [ebp - 0x6f44]
call fcn.004e8ef0
test al, al
jne 0x4c3349
mov eax, dword [ebp - 0x6f44]
xor esi, esi
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x4c114d
mov edi, dword [ebp - 0x6f68]
add eax, 0x10c
mov dword [ebp - 0x6f48], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x28a8]
call fcn.00402700
mov ecx, dword [ebp - 0x6f48]
push eax
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
mov ecx, edi
call fcn.00402310
mov eax, dword [ebp - 0x6f44]
inc esi
add edi, 0xc
mov ecx, dword [eax + 0x30]
cmp esi, ecx
jb 0x4c1101
mov edi, dword [ebp - 0x6f68]
lea eax, [ebp - 0x2934]
push eax
lea eax, [ecx + ecx*2]
lea ecx, [edi + eax*4]
call fcn.00401f00
push 0
push 0x590908
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
push 0x4c
lea ecx, [ebp - 0x2b70]
call fcn.0041aac0
lea ecx, [ebp - 0x2b70]
call fcn.0040dad0
mov eax, dword [ebp - 0x6f44]
mov esi, dword [ebp - 0x6f70]
sub edi, esi
mov byte [ebp - 4], 0x4c
mov dword [ebp - 0x6f40], 0
lea ecx, [eax + 0x10c]
mov dword [ebp - 0x6f4c], esi
mov dword [ebp - 0x6f48], ecx
lea ecx, [eax + 0x17c]
mov dword [ebp - 0x6f94], ecx
mov dword [ebp - 0x6f7c], edi
nop
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4c167f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
add edi, esi
push 0
push 0x57b9d4
mov ecx, edi
mov dword [ebp - 0x6f54], edi
call fcn.00402700
push eax
lea ecx, [ebp - 0x209c]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x3778]
call fcn.0040e0b0
push 3
lea ecx, [ebp - 0x209c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3778]
call fcn.00401350
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
mov byte [ebp - 4], 0x4d
push 0
push 0
cmp ecx, dword [eax + 0x30]
jae 0x4c1286
lea ecx, [ebp - 0x26c8]
call fcn.00402700
mov ecx, dword [ebp - 0x6f48]
push eax
push dword [ebp - 0x6f40]
call fcn.0051c270
mov ecx, eax
jmp 0x4c1291
push str._temp
lea ecx, [ebp - 0x25d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x23e0]
call fcn.00402310
lea ecx, [ebp - 0x3778]
call fcn.00401490
test al, al
je 0x4c1643
mov ecx, dword [ebp - 0x6f44]
call fcn.004e8ef0
test al, al
jne 0x4c1643
push 1
lea ecx, [ebp - 0x3778]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x21b4]
call fcn.00401ef0
push 0x57e85c
lea ecx, [ebp - 0x21b4]
call fcn.00401fb0
test al, al
jne 0x4c1630
mov ecx, dword [ebp - 0x6f44]
push 0
lea ecx, [ecx + 0x14c]
call fcn.00402700
push eax
push 0x587c14
lea ecx, [ebp - 0x21b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004dc2f0
test al, al
jne 0x4c1630
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x3778]
call fcn.004014f0
push eax
push 0x572c70
mov ecx, edi
call fcn.00402700
push eax
lea ecx, [ebp - 0x255c]
call fcn.00402310
lea eax, [ebp - 0x255c]
push eax
lea ecx, [ebp - 0x2314]
call fcn.00401f00
push 0
push 0
lea ecx, [ebp - 0x3778]
call fcn.00401500
mov edx, 0x58fc20
mov ecx, eax
call fcn.00406300
test eax, eax
jne 0x4c1464
push eax
lea ecx, [ebp - 0x255c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2b70]
call fcn.0040dc70
test al, al
je 0x4c1464
push 0
lea ecx, [ebp - 0x2b70]
call fcn.0040dd10
push eax
lea ecx, [ebp - 0x2314]
call fcn.00401ef0
lea ecx, [ebp - 0x2b70]
call fcn.0040dd90
mov ecx, eax
call fcn.004062c0
test eax, eax
je 0x4c141d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2b70]
call fcn.0040dd90
push eax
push 0x5735d4
lea ecx, [ebp - 0x2314]
call fcn.004040f0
push 3
push 1
lea ecx, [ebp - 0x2314]
call fcn.00402700
push eax
lea ecx, [ebp - 0x209c]
call fcn.004022c0
mov edx, dword [ebp - 0x6f94]
mov ecx, eax
call fcn.0040e0d0
test al, al
jne 0x4c1476
push 0
lea ecx, [ebp - 0x2b70]
call fcn.0040dd10
push eax
lea ecx, [ebp - 0x209c]
call fcn.00401ef0
jmp 0x4c1476
lea eax, [ebp - 0x255c]
push eax
lea ecx, [ebp - 0x209c]
call fcn.00401f00
push 0
push 0
push 0x572c78
push 0x5735d0
lea ecx, [ebp - 0x209c]
call fcn.00404790
push 0
push 1
push 1
push 0
lea ecx, [ebp - 0x23e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x209c]
call fcn.00403db0
push 0
lea ecx, [ebp - 0x255c]
mov esi, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
lea eax, [ebp - 0x209c]
push eax
call fcn.004dd140
test al, al
lea ecx, [ebp - 0x209c]
mov eax, 1
push 0
cmovne esi, eax
call fcn.00402700
push eax
push 0
push esi
lea ecx, [ebp - 0x209c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f4c]
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x21b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
mov eax, dword [ebp - 0x6f44]
push 0xffffffffffffffff
push 0xc
mov eax, dword [eax + 8]
push dword [eax + 0xa4]
call fcn.004adef0
mov edi, eax
cmp edi, 0xffffffff
je 0x4c1624
push 0
push 0
push 0
test esi, esi
mov eax, 0x58fc3c
push 0x574098
mov ecx, 0x578738
cmove ecx, eax
push ecx
push 0x58fc54
lea ecx, [ebp - 0x209c]
call fcn.00402700
mov esi, dword [ebp - 0x6f4c]
mov ecx, esi
push eax
push 0x590940
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x21b4]
call fcn.00402700
push eax
push 0x5908f0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x3778]
call fcn.004014f0
mov ecx, dword [ebp - 0x6f54]
push eax
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x209c]
call fcn.00402310
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x209c]
call fcn.00402700
push eax
push 0
push 0xc
push edi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004ae070
jmp 0x4c162a
mov esi, dword [ebp - 0x6f4c]
mov edi, dword [ebp - 0x6f54]
lea ecx, [ebp - 0x3778]
call fcn.00401450
test al, al
jne 0x4c12b5
lea ecx, [ebp - 0x3778]
mov byte [ebp - 4], 0x4c
call fcn.004013a0
mov edi, dword [ebp - 0x6f40]
add esi, 0xc
mov eax, dword [ebp - 0x6f44]
inc edi
mov dword [ebp - 0x6f40], edi
mov dword [ebp - 0x6f4c], esi
cmp edi, dword [eax + 0x30]
mov edi, dword [ebp - 0x6f7c]
jbe 0x4c11d0
jmp 0x4c1685
mov eax, dword [ebp - 0x6f44]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4c333e
push 0
push 0x590958
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
push 0xc
lea ecx, [ebp - 0x2430]
call fcn.00405e90
lea ecx, [ebp - 0x2430]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2198]
mov byte [ebp - 4], 0x4e
call fcn.00405e90
lea ecx, [ebp - 0x2198]
call fcn.00401aa0
push 4
lea ecx, [ebp - 0x6cd8]
mov byte [ebp - 4], 0x4f
call fcn.004062b0
lea ecx, [ebp - 0x6cd8]
call fcn.004097d0
push 4
lea ecx, [ebp - 0x6cd4]
mov byte [ebp - 4], 0x50
call fcn.004062b0
lea ecx, [ebp - 0x6cd4]
call fcn.004097d0
lea eax, [ebp - 0x6cd4]
mov byte [ebp - 4], 0x51
mov esi, dword [0x55388c]
push eax
push 0x56d3a0
push 1
push 0
push 0x56d3b0
call esi
test eax, eax
js 0x4c1f43
lea ecx, [ebp - 0x70a8]
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x7058]
movups xmmword [ebp - 0x6fa0], xmm0
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x7088]
movups xmmword [ebp - 0x6f60], xmm0
call fcn.004011a0
movups xmm0, xmmword [eax]
lea ecx, [ebp - 0x70b8]
movups xmmword [ebp - 0x6f88], xmm0
call fcn.004011a0
mov edi, eax
mov byte [ebp - 4], 0x55
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x6fa0]
mov ecx, dword [ebp - 0x6cd4]
mov edx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
mov esi, dword [ecx]
movups xmmword [edx], xmm0
movups xmm0, xmmword [ebp - 0x6f60]
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x6f88]
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 - 0x70b8]
mov dword [ebp - 0x6f48], eax
call fcn.00401230
lea ecx, [ebp - 0x7088]
call fcn.00401230
lea ecx, [ebp - 0x7058]
call fcn.00401230
lea ecx, [ebp - 0x70a8]
mov byte [ebp - 4], 0x51
call fcn.00401230
cmp byte [ebp - 0x6f48], 0
jne 0x4c2453
push 4
lea ecx, [ebp - 0x6cdc]
call fcn.004062b0
lea ecx, [ebp - 0x6cdc]
call fcn.004097d0
push 0x572c70
lea ecx, [ebp - 0x6ff4]
mov byte [ebp - 4], 0x56
call fcn.00401080
mov byte [ebp - 4], 0x57
mov ecx, dword [ebp - 0x6cd4]
mov esi, dword [ecx]
lea ecx, [ebp - 0x6cdc]
push ecx
mov ecx, eax
call fcn.00401190
push eax
push dword [ebp - 0x6cd4]
mov eax, dword [esi + 0x1c]
call eax
shr eax, 0x1f
lea ecx, [ebp - 0x6ff4]
mov dword [ebp - 0x6f48], eax
mov byte [ebp - 4], 0x56
call fcn.00401130
cmp byte [ebp - 0x6f48], 0
je 0x4c189e
lea ecx, [ebp - 0x6cdc]
mov byte [ebp - 4], 0x51
call fcn.0051b5e0
jmp 0x4c2453
push 4
lea ecx, [ebp - 0x6cf8]
call fcn.004062b0
lea ecx, [ebp - 0x6cf8]
call fcn.004097d0
mov byte [ebp - 4], 0x58
lea edx, [ebp - 0x6cf8]
mov eax, dword [ebp - 0x6cdc]
push edx
push 1
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x38]
call eax
test eax, eax
jns 0x4c18f4
lea ecx, [ebp - 0x6cf8]
call fcn.0051b5e0
lea ecx, [ebp - 0x6cdc]
mov byte [ebp - 4], 0x51
call fcn.0051b5e0
jmp 0x4c2453
mov eax, dword [ebp - 0x6cf8]
lea edx, [ebp - 0x256c]
mov dword [ebp - 0x256c], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
mov eax, dword [ebp - 0x256c]
test eax, eax
je 0x4c1f24
mov esi, 1
mov dword [ebp - 0x6f54], esi
cmp eax, esi
jl 0x4c1f24
mov eax, dword [ebp - 0x6f44]
mov edi, dword [0x553460]
lea ecx, [eax + 0x17c]
mov dword [ebp - 0x6f94], ecx
jmp 0x4c1956
mov eax, dword [ebp - 0x6f44]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4c1f24
push 4
lea ecx, [ebp - 0x6cbc]
call fcn.004062b0
lea ecx, [ebp - 0x6cbc]
call fcn.004097d0
push 3
push esi
lea ecx, [ebp - 0x7068]
mov byte [ebp - 4], 0x59
call fcn.004011b0
mov esi, eax
mov byte [ebp - 4], 0x5a
lea edx, [ebp - 0x6cbc]
mov ecx, dword [ebp - 0x6cf8]
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 - 0x7068]
mov dword [ebp - 0x6f48], eax
mov byte [ebp - 4], 0x59
call fcn.00401230
cmp byte [ebp - 0x6f48], 0
jne 0x4c1efc
mov eax, dword [ebp - 0x6cbc]
lea edx, [ebp - 0x6d14]
mov dword [ebp - 0x6d14], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
test eax, eax
js 0x4c1efc
mov eax, dword [ebp - 0x6d14]
test eax, eax
je 0x4c1efc
push eax
lea ecx, [ebp - 0x21b4]
call fcn.00401ef0
push dword [ebp - 0x6d14]
call edi
mov ecx, dword [ebp - 0x6f44]
push 0
lea ecx, [ecx + 0x14c]
call fcn.00402700
push eax
push 0x5909b4
lea ecx, [ebp - 0x21b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004dc2f0
test al, al
jne 0x4c1efc
push 4
lea ecx, [ebp - 0x6cd0]
call fcn.004062b0
lea ecx, [ebp - 0x6cd0]
call fcn.004097d0
mov byte [ebp - 4], 0x5b
lea edx, [ebp - 0x6cd0]
mov eax, dword [ebp - 0x6cbc]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x4c]
call eax
test eax, eax
js 0x4c1ef1
push 4
lea ecx, [ebp - 0x6cc8]
call fcn.004062b0
lea ecx, [ebp - 0x6cc8]
call fcn.004097d0
mov byte [ebp - 4], 0x5c
lea edx, [ebp - 0x6cc8]
mov eax, dword [ebp - 0x6cd0]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x44]
call eax
test eax, eax
js 0x4c1ee6
mov eax, dword [ebp - 0x6cc8]
lea edx, [ebp - 0x2464]
mov dword [ebp - 0x2464], 0
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1c]
call eax
cmp dword [ebp - 0x2464], 0
je 0x4c1ee6
lea ecx, [ebp - 0x2198]
call fcn.00402250
mov esi, 1
cmp dword [ebp - 0x2464], esi
jl 0x4c1ce4
nop word [eax + eax]
push 4
lea ecx, [ebp - 0x6cc4]
call fcn.004062b0
lea ecx, [ebp - 0x6cc4]
call fcn.004097d0
mov byte [ebp - 4], 0x5d
lea edx, [ebp - 0x6cc4]
mov eax, dword [ebp - 0x6cc8]
push edx
push esi
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x20]
call eax
test eax, eax
js 0x4c1cc8
mov eax, dword [ebp - 0x6cc4]
lea edx, [ebp - 0x28b8]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x24]
call eax
test eax, eax
js 0x4c1cc8
cmp dword [ebp - 0x28b8], 0
jne 0x4c1cc8
push 4
lea ecx, [ebp - 0x6ce8]
call fcn.004062b0
lea ecx, [ebp - 0x6ce8]
call fcn.004097d0
mov byte [ebp - 4], 0x5e
lea edx, [ebp - 0x6ce8]
mov eax, dword [ebp - 0x6cc4]
push edx
push str.MbLk
push eax
mov ecx, dword [eax]
mov eax, dword [ecx]
call eax
test eax, eax
js 0x4c1cbd
mov eax, dword [ebp - 0x6ce8]
lea edx, [ebp - 0x6d00]
mov dword [ebp - 0x6d00], 0
mov dword [ebp - 0x6d08], 0
push edx
mov ecx, dword [eax]
push eax
mov eax, dword [ecx + 0x28]
call eax
mov eax, dword [ebp - 0x6d00]
test eax, eax
je 0x4c1cbd
push eax
lea ecx, [ebp - 0x2314]
call fcn.00401ef0
mov eax, dword [ebp - 0x6ce8]
lea edx, [ebp - 0x6d08]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x30]
call eax
mov ecx, dword [ebp - 0x6d08]
call fcn.004062c0
test eax, eax
je 0x4c1c7e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6d08]
lea ecx, [ebp - 0x2314]
push 0x5735d4
call fcn.004040f0
push 3
push 1
lea ecx, [ebp - 0x2314]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2198]
call fcn.004022c0
mov edx, dword [ebp - 0x6f94]
mov ecx, eax
call fcn.0040e0d0
test al, al
jne 0x4c1c8f
push dword [ebp - 0x6d00]
lea ecx, [ebp - 0x2198]
call fcn.00401ef0
push 0
push 1
push 0x572c78
push 0x5735d0
lea ecx, [ebp - 0x2198]
call fcn.00404790
push dword [ebp - 0x6d00]
call edi
mov eax, dword [ebp - 0x6d08]
test eax, eax
je 0x4c1cbd
push eax
call edi
lea ecx, [ebp - 0x6ce8]
call fcn.0051b5e0
lea ecx, [ebp - 0x6cc4]
mov byte [ebp - 4], 0x5c
call fcn.0051b5e0
inc esi
cmp esi, dword [ebp - 0x2464]
jle 0x4c1b20
lea ecx, [ebp - 0x2198]
call fcn.00402a90
test al, al
jne 0x4c1ee6
mov eax, dword [ebp - 0x6cdc]
lea edx, [ebp - 0x6dc4]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x20]
call eax
test eax, eax
js 0x4c1d98
mov eax, dword [ebp - 0x6f44]
movsd xmm0, qword [eax + 0x368]
comisd xmm0, xmmword [0x5a8078]
jbe 0x4c1d34
mov eax, dword [eax + 0x184]
jmp 0x4c1d3a
mov eax, dword [eax + 0x180]
push eax
lea ecx, [ebp - 0x2430]
call fcn.00401ef0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x21b4]
call fcn.00402700
push eax
push 0x572c70
push dword [ebp - 0x6dc4]
lea ecx, [ebp - 0x2430]
push 0x578120
call fcn.004040f0
push 1
push 0
push 0x572c70
push 0x572cf8
lea ecx, [ebp - 0x2430]
call fcn.00404790
jmp 0x4c1da3
lea ecx, [ebp - 0x2430]
call fcn.00402250
push 0
push 1
push 1
push 0
push 0x5909d4
lea ecx, [ebp - 0x2198]
call fcn.00403db0
push 0
lea ecx, [ebp - 0x2430]
mov esi, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
lea eax, [ebp - 0x2198]
push eax
call fcn.004dd140
test al, al
lea ecx, [ebp - 0x2198]
mov eax, 1
push 0
cmovne esi, eax
call fcn.00402700
push eax
push 0
push esi
lea ecx, [ebp - 0x2198]
call fcn.00402700
push eax
push 0x58aa90
lea ecx, [ebp - 0x21b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
mov eax, dword [ebp - 0x6f44]
push 0xffffffffffffffff
push 0xd
mov eax, dword [eax + 8]
push dword [eax + 0xa4]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c1ee6
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58aa90
lea ecx, [ebp - 0x2198]
call fcn.00402700
push eax
push 0
push 0xd
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004ae070
push 0
push 0
push 0
push 0
test esi, esi
mov ecx, 0x58fc3c
push 0x574098
mov eax, 0x578738
cmove eax, ecx
lea ecx, [ebp - 0x2314]
push eax
push 0x58fc54
call fcn.00402700
push eax
push 0x5908d4
push 0x5909e4
lea ecx, [ebp - 0x21b4]
call fcn.00402700
push eax
push 0x590a1c
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea ecx, [ebp - 0x6cc8]
call fcn.0051b5e0
lea ecx, [ebp - 0x6cd0]
call fcn.0051b5e0
lea ecx, [ebp - 0x6cbc]
mov byte [ebp - 4], 0x58
call fcn.0051b5e0
mov esi, dword [ebp - 0x6f54]
inc esi
mov dword [ebp - 0x6f54], esi
cmp esi, dword [ebp - 0x256c]
jle 0x4c1950
lea ecx, [ebp - 0x6cf8]
call fcn.0051b5e0
lea ecx, [ebp - 0x6cdc]
mov byte [ebp - 4], 0x51
call fcn.0051b5e0
jmp 0x4c2453
lea eax, [ebp - 0x6cd8]
push eax
push 0x5a7f44
push 1
push 0
push 0x5a7f34
call esi
test eax, eax
js 0x4c2453
push 4
lea ecx, [ebp - 0x6cf4]
call fcn.004062b0
lea ecx, [ebp - 0x6cf4]
call fcn.004097d0
mov byte [ebp - 4], 0x5f
lea edx, [ebp - 0x6cf4]
mov eax, dword [ebp - 0x6cd8]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x14]
call eax
test eax, eax
js 0x4c2444
mov eax, dword [ebp - 0x6cf4]
lea edx, [ebp - 0x2474]
push edx
mov dword [ebp - 0x2474], 0
lea edx, [ebp - 0x6d0c]
push edx
mov ecx, dword [eax]
push 5
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
js 0x4c2444
mov eax, dword [ebp - 0x6f44]
mov esi, dword [0x5538a4]
lea ecx, [eax + 0x17c]
mov dword [ebp - 0x6f48], ecx
jmp 0x4c1ff6
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [ebp - 0x2474]
test ecx, ecx
je 0x4c2444
xor edi, edi
test ecx, ecx
je 0x4c2416
jmp 0x4c2016
mov eax, dword [ebp - 0x6f44]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4c2416
mov eax, dword [ebp - 0x6d0c]
lea ecx, [ebp - 0x21b4]
push dword [eax + edi*4]
call fcn.00401ef0
mov eax, dword [ebp - 0x6d0c]
push dword [eax + edi*4]
call esi
mov ecx, dword [ebp - 0x6f44]
push 0
lea ecx, [ecx + 0x14c]
call fcn.00402700
push eax
push 0x5909b4
lea ecx, [ebp - 0x21b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004dc2f0
test al, al
jne 0x4c2409
push 4
lea ecx, [ebp - 0x6cc0]
call fcn.004062b0
lea ecx, [ebp - 0x6cc0]
call fcn.004097d0
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x21b4]
mov eax, dword [ebp - 0x6cd8]
mov esi, dword [eax]
lea eax, [ebp - 0x6cc0]
push eax
push 0x5a7f74
call fcn.00402700
push eax
push dword [ebp - 0x6cd8]
mov eax, dword [esi + 0x18]
call eax
test eax, eax
js 0x4c23f4
mov eax, dword [ebp - 0x6cc0]
lea edx, [ebp - 0x6cfc]
mov dword [ebp - 0x6cfc], 0
mov dword [ebp - 0x6d04], 0
push edx
mov ecx, dword [eax]
push eax
mov eax, dword [ecx + 0x84]
call eax
cmp dword [ebp - 0x6cfc], 0
je 0x4c23f4
mov eax, dword [ebp - 0x6cc0]
lea edx, [ebp - 0x6d04]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x8c]
call eax
push dword [ebp - 0x6cfc]
lea ecx, [ebp - 0x2314]
call fcn.00401ef0
mov ecx, dword [ebp - 0x6d04]
call fcn.004062c0
test eax, eax
je 0x4c2192
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6d04]
lea ecx, [ebp - 0x2314]
push 0x5735d4
call fcn.004040f0
push 3
push 1
lea ecx, [ebp - 0x2314]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2198]
call fcn.004022c0
mov edx, dword [ebp - 0x6f48]
mov ecx, eax
call fcn.0040e0d0
test al, al
jne 0x4c21a3
push dword [ebp - 0x6cfc]
lea ecx, [ebp - 0x2198]
call fcn.00401ef0
push 0
push 1
push 0x572c78
push 0x5735d0
lea ecx, [ebp - 0x2198]
call fcn.00404790
push dword [ebp - 0x6cfc]
mov esi, dword [0x5538a4]
call esi
mov eax, dword [ebp - 0x6d04]
test eax, eax
je 0x4c21d7
push eax
call esi
lea ecx, [ebp - 0x2198]
call fcn.00402a90
test al, al
je 0x4c21fa
lea ecx, [ebp - 0x6cc0]
mov byte [ebp - 4], 0x5f
call fcn.0051b5e0
jmp 0x4c2409
push 0
push 1
push 1
push 0
push 0x5909d4
lea ecx, [ebp - 0x2198]
call fcn.00403db0
xor ecx, ecx
test eax, eax
lea eax, [ebp - 0x21b4]
setg cl
mov dword [ebp - 0x6f94], ecx
lea ecx, [ebp - 0x2430]
push eax
call fcn.00401f00
push 0
push 1
push 0xffffffffffffffff
push 0
push 0x578130
lea ecx, [ebp - 0x2430]
call fcn.00403db0
test eax, eax
jne 0x4c2268
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push 0x578130
lea ecx, [ebp - 0x2430]
call fcn.004040f0
mov eax, dword [ebp - 0x6f44]
lea ecx, [ebp - 0x2430]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590a3c
push dword [eax + 0x180]
call fcn.004044a0
push 0
lea ecx, [ebp - 0x2430]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
lea eax, [ebp - 0x2198]
push eax
call fcn.004dd140
test al, al
je 0x4c22c3
mov esi, 1
jmp 0x4c22f5
lea ecx, [ebp - 0x2198]
call fcn.00402700
push eax
push 0
call dword [0x5538ac]
test eax, eax
je 0x4c22ef
lea ecx, [ebp - 0x6cc0]
mov byte [ebp - 4], 0x5f
call fcn.0051b5e0
jmp 0x4c2409
mov esi, dword [ebp - 0x6f94]
push 0
lea ecx, [ebp - 0x2198]
call fcn.00402700
push eax
push 0
push esi
lea ecx, [ebp - 0x2198]
call fcn.00402700
push eax
push 0x58aa90
lea ecx, [ebp - 0x21b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
mov eax, dword [ebp - 0x6f44]
push 0xffffffffffffffff
push 0xd
mov eax, dword [eax + 8]
push dword [eax + 0xa4]
call fcn.004adef0
mov dword [ebp - 0x6f94], eax
cmp eax, 0xffffffff
je 0x4c23f4
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58aa90
lea ecx, [ebp - 0x2198]
call fcn.00402700
push eax
push 0
push 0xd
push dword [ebp - 0x6f94]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004ae070
push 0
push 0
push 0
push 0
test esi, esi
mov ecx, 0x58fc3c
push 0x574098
mov eax, 0x578738
cmove eax, ecx
lea ecx, [ebp - 0x2314]
push eax
push 0x58fc54
call fcn.00402700
push eax
push 0x5908d4
push 0x5909e4
lea ecx, [ebp - 0x21b4]
call fcn.00402700
push eax
push 0x590a1c
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea ecx, [ebp - 0x6cc0]
mov byte [ebp - 4], 0x5f
call fcn.0051b5e0
mov esi, dword [0x5538a4]
inc edi
cmp edi, dword [ebp - 0x2474]
jb 0x4c2010
push dword [ebp - 0x6d0c]
call esi
mov eax, dword [ebp - 0x6cf4]
lea edx, [ebp - 0x2474]
push edx
lea edx, [ebp - 0x6d0c]
push edx
mov ecx, dword [eax]
push 5
push eax
mov eax, dword [ecx + 0xc]
call eax
test eax, eax
jns 0x4c1ff0
lea ecx, [ebp - 0x6cf4]
mov byte [ebp - 4], 0x51
call fcn.0051b5e0
mov ecx, dword [ebp - 0x6f44]
call fcn.004e8ef0
test al, al
jne 0x4c3312
push 0x18
lea ecx, [ebp - 0x2864]
call fcn.004068b0
lea ecx, [ebp - 0x2864]
call fcn.004059c0
push 0
push 0x590a4c
lea ecx, [ebp - 0x1fd4]
mov byte [ebp - 4], 0x61
call fcn.004174b0
mov eax, dword [ebp - 0x6f44]
xor esi, esi
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x4c24fe
mov edi, dword [ebp - 0x6f68]
add eax, 0x104
mov dword [ebp - 0x6f48], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x582850
push esi
mov ecx, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
mov ecx, edi
call fcn.00402310
mov eax, dword [ebp - 0x6f44]
inc esi
add edi, 0xc
mov ecx, dword [eax + 0x30]
mov eax, dword [ebp - 0x6f48]
cmp esi, ecx
jb 0x4c24b4
mov esi, dword [ebp - 0x6f68]
lea eax, [ecx + ecx*2]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590a80
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c256b
mov eax, dword [ebp - 0x6f44]
push 0
push 0
push 0
mov eax, dword [eax + 0x30]
push 0
push 0
push 0
push 0
push 0
push 0
inc eax
push 0
push 0x590a80
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
xor edi, edi
mov dword [ebp - 0x6f7c], edi
cmp dword [ebp - 0x6f74], edi
jbe 0x4c2980
mov eax, dword [ebp - 0x6f44]
mov esi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f40], esi
lea ecx, [eax + 0x17c]
mov dword [ebp - 0x6f4c], ecx
mov ecx, dword [ebp - 0x6f68]
sub ecx, esi
mov dword [ebp - 0x6f48], ecx
jmp 0x4c25b6
mov eax, dword [ebp - 0x6f44]
mov ecx, eax
call fcn.004e8ef0
test al, al
jne 0x4c2980
mov eax, dword [ebp - 0x6f48]
add eax, esi
push 0
push 0x20019
mov ecx, eax
mov dword [ebp - 0x6f54], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c2964
lea eax, [ebp - 0x23e0]
push eax
push 0x587c88
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c2964
lea ecx, [ebp - 0x23e0]
call fcn.004022a0
cmp eax, 2
jl 0x4c2964
push 0x18
lea ecx, [ebp - 0x29d4]
call fcn.004068b0
push 0
push 0x5742ac
lea ecx, [ebp - 0x23e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x29d4]
call fcn.00405a80
xor edi, edi
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x29d4]
mov dword [ebp - 0x6f6c], edi
call fcn.00405b70
test eax, eax
je 0x4c294f
mov eax, dword [ebp - 0x6f44]
add eax, 0x14c
mov dword [ebp - 0x6f94], eax
push edi
lea ecx, [ebp - 0x29d4]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x21b4]
call fcn.00401ef0
mov ecx, dword [ebp - 0x6f94]
push 0
call fcn.00402700
push eax
push 0x590aec
lea ecx, [ebp - 0x21b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004dc2f0
test al, al
jne 0x4c2935
push edi
lea ecx, [ebp - 0x29d4]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x209c]
call fcn.00401ef0
lea ecx, [ebp - 0x209c]
call fcn.00402a90
test al, al
jne 0x4c2935
push 0
push 1
push 0xffffffffffffffff
push 0
push str..dll
lea ecx, [ebp - 0x209c]
call fcn.00403db0
lea ecx, [ebp - 0x209c]
mov esi, eax
call fcn.004022a0
sub eax, 3
cmp esi, eax
je 0x4c274a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str..dll
lea ecx, [ebp - 0x209c]
call fcn.004040f0
mov edx, dword [ebp - 0x6f4c]
lea ecx, [ebp - 0x209c]
push 3
call fcn.0040e0d0
lea ecx, [ebp - 0x209c]
call fcn.00402700
push eax
push 0
call dword [0x5538ac]
test eax, eax
jne 0x4c292f
push eax
push 1
push 1
push eax
push 0x5909d4
lea ecx, [ebp - 0x209c]
call fcn.00403db0
push 0
push 0
push 0
push 0
push 0
push 0
xor ecx, ecx
test eax, eax
push 0
push 0
setg cl
push 0
mov dword [ebp - 0x6f6c], ecx
lea ecx, [ebp - 0x29d4]
push edi
call fcn.00405b40
mov ecx, dword [ebp - 0x6f54]
push eax
push 0x590b08
call fcn.00402700
push eax
lea ecx, [ebp - 0x2148]
call fcn.00402310
push 0
lea ecx, [ebp - 0x2148]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
lea eax, [ebp - 0x209c]
push eax
call fcn.004dd140
mov esi, dword [ebp - 0x6f6c]
lea ecx, [ebp - 0x209c]
test al, al
mov eax, 1
push 0
cmovne esi, eax
call fcn.00402700
push eax
push 0
push esi
lea ecx, [ebp - 0x209c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x21b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
mov eax, dword [ebp - 0x6f44]
push 0xffffffffffffffff
push 0xe
mov eax, dword [eax + 8]
push dword [eax + 0xa4]
call fcn.004adef0
mov dword [ebp - 0x6f6c], eax
cmp eax, 0xffffffff
je 0x4c292f
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0x587c88
call fcn.00402700
push eax
lea ecx, [ebp - 0x209c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
call fcn.00402700
push eax
push 0xe
push dword [ebp - 0x6f6c]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004ae070
push 0
push 0
push 0
test esi, esi
mov ecx, 0x58fc3c
push 0x574098
mov eax, 0x578738
cmove eax, ecx
lea ecx, [ebp - 0x209c]
push eax
push 0x58fc54
call fcn.00402700
mov esi, dword [ebp - 0x6f40]
mov ecx, esi
push eax
push 0x590940
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x21b4]
call fcn.00402700
push eax
push 0x5908f0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4c2935
mov esi, dword [ebp - 0x6f40]
lea ecx, [ebp - 0x29d4]
inc edi
call fcn.00405b70
cmp edi, eax
jb 0x4c2683
mov dword [ebp - 0x6f6c], edi
lea ecx, [ebp - 0x29d4]
mov byte [ebp - 4], 0x61
call fcn.00405b10
mov edi, dword [ebp - 0x6f7c]
inc edi
add esi, 0xc
mov dword [ebp - 0x6f7c], edi
mov dword [ebp - 0x6f40], esi
cmp edi, dword [ebp - 0x6f74]
jb 0x4c25b0
mov ecx, dword [ebp - 0x6f44]
call fcn.004e8ef0
test al, al
jne 0x4c3307
push 0
push 0x590b30
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
push 4
lea ecx, [ebp - 0x22bc]
mov dword [ebp - 0x6f98], 0x590b68
mov dword [ebp - 0x6f94], 0x590bf0
call fcn.004062b0
lea ecx, [ebp - 0x22bc]
call fcn.004097d0
push 4
lea ecx, [ebp - 0x2408]
mov byte [ebp - 4], 0x63
call fcn.004062b0
lea ecx, [ebp - 0x2408]
call fcn.004097d0
push 0xc
lea ecx, [ebp - 0x20cc]
mov byte [ebp - 4], 0x64
call fcn.00405e90
lea ecx, [ebp - 0x20cc]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2710]
mov byte [ebp - 4], 0x65
call fcn.00405e90
lea ecx, [ebp - 0x2710]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2778]
mov byte [ebp - 4], 0x66
call fcn.00405e90
lea ecx, [ebp - 0x2778]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x6db8]
mov byte [ebp - 4], 0x67
call fcn.00409750
lea ecx, [ebp - 0x6db8]
call fcn.00409790
mov eax, dword [ebp - 0x6f44]
xor ecx, ecx
add eax, 0x314
mov byte [ebp - 4], 0x68
mov dword [ebp - 0x6f4c], ecx
mov dword [ebp - 0x6f40], eax
nop word [eax + eax]
mov edi, dword [ebp + ecx*4 - 0x6f98]
lea ecx, [ebp - 0x1f74]
push 0
push 0x20019
push edi
mov dword [ebp - 0x6f54], edi
call fcn.00409800
test al, al
je 0x4c3290
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409e90
test al, al
je 0x4c3290
nop dword [eax + eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2120]
push 0x572c70
push edi
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x2120]
call fcn.00402700
push eax
lea ecx, [ebp - 0x22bc]
call fcn.00409800
test al, al
je 0x4c3268
lea eax, [ebp - 0x6db8]
mov dword [ebp - 0x6f7c], 0
push eax
push 0
lea ecx, [ebp - 0x22bc]
call fcn.00409e90
test al, al
je 0x4c2f0f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6db8]
lea ecx, [ebp - 0x2778]
push 0x572c70
push dword [ebp - 0x6cb4]
push 0x572c70
push edi
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x2778]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2408]
call fcn.00409800
test al, al
je 0x4c2ee1
lea eax, [ebp - 0x20cc]
push eax
push 0x590c78
lea ecx, [ebp - 0x2408]
call fcn.004099d0
test al, al
je 0x4c2ee1
lea ecx, [ebp - 0x20cc]
call fcn.00402a90
test al, al
jne 0x4c2ee1
mov ecx, dword [ebp - 0x6f44]
push 0
lea ecx, [ecx + 0x14c]
call fcn.00402700
push eax
push 0x587ca4
lea ecx, [ebp - 0x20cc]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004dc2f0
test al, al
jne 0x4c2ee1
push 0
push 1
push 1
push 0
push 0x590c90
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c2c41
push 0
push 1
push 1
push 0
push 0x590ca0
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c2ee1
push 0
push 1
push 1
push 0
push 0x590cb0
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c2c7d
push 0
push 1
push 1
push 0
push 0x590cdc
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c2ee1
push 0
push 1
push 1
push 0
push 0x590d08
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c2cb9
push 0
push 1
push 1
push 0
push 0x590d40
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c2ee1
push 0
push 1
push 1
push 0
push 0x590d78
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c2cf5
push 0
push 1
push 1
push 0
push 0x590da4
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c2ee1
push 0
push 1
push 1
push 0
push 0x590dcc
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c2d31
push 0
push 1
push 1
push 0
push 0x590e04
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c2ee1
xor edi, edi
lea ecx, [ebp - 0x20cc]
push edi
push 0x590e38
call fcn.00402700
push eax
lea ecx, [ebp - 0x2864]
call fcn.00405b80
lea ecx, [ebp - 0x2864]
xor esi, esi
call fcn.00405b70
test eax, eax
je 0x4c2de9
push 1
push esi
lea ecx, [ebp - 0x2864]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x2710]
call fcn.004022c0
mov ecx, eax
call fcn.00402a90
test al, al
jne 0x4c2dd2
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5903b8
call fcn.00402700
push eax
lea ecx, [ebp - 0x2710]
call fcn.004044a0
lea ecx, [ebp - 0x2710]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4c2de4
lea ecx, [ebp - 0x2864]
inc esi
call fcn.00405b70
cmp esi, eax
jb 0x4c2d65
jmp 0x4c2de9
mov edi, 1
push 0
push 0
push 0
push edi
lea ecx, [ebp - 0x2778]
call fcn.00402700
push eax
push 0x58aa90
lea ecx, [ebp - 0x20cc]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
mov eax, dword [ebp - 0x6f44]
push 0xffffffffffffffff
push 0xf
mov eax, dword [eax + 8]
push dword [eax + 0xa4]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4c2edb
push 0
push 0
push 0
push 0
push 0
push 0x590c78
push 0x58aa90
push 0
lea ecx, [ebp - 0x2778]
call fcn.00402700
push eax
push 0xf
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004ae070
push 0
push 0
push 0
push 0x574098
test edi, edi
mov ecx, 0x58fc3c
mov eax, 0x578738
cmove eax, ecx
lea ecx, [ebp - 0x2778]
push eax
push 0x58fc54
push 0x590e40
call fcn.00402700
push eax
push 0x590e78
push 0x5909e4
lea ecx, [ebp - 0x20cc]
call fcn.00402700
push eax
push 0x5908f0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov edi, dword [ebp - 0x6f54]
mov eax, dword [ebp - 0x6f7c]
lea ecx, [ebp - 0x6db8]
inc eax
push ecx
push eax
lea ecx, [ebp - 0x22bc]
mov dword [ebp - 0x6f7c], eax
call fcn.00409e90
test al, al
jne 0x4c2b45
mov esi, dword [ebp - 0x6f6c]
lea eax, [ebp - 0x20cc]
push eax
push 0x590c78
lea ecx, [ebp - 0x22bc]
call fcn.004099d0
test al, al
je 0x4c3268
lea ecx, [ebp - 0x20cc]
call fcn.00402a90
test al, al
jne 0x4c3268
mov ecx, dword [ebp - 0x6f44]
push 0
lea ecx, [ecx + 0x14c]
call fcn.00402700
push eax
push 0x587ca4
lea ecx, [ebp - 0x20cc]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004dc2f0
test al, al
jne 0x4c3268
push 0
push 1
push 1
push 0
push 0x590c90
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c2fb5
push 0
push 1
push 1
push 0
push 0x590ca0
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c3268
push 0
push 1
push 1
push 0
push 0x590cb0
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c2ff1
push 0
push 1
push 1
push 0
push 0x590cdc
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c3268
push 0
push 1
push 1
push 0
push 0x590d08
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c302d
push 0
push 1
push 1
push 0
push 0x590d40
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c3268
push 0
push 1
push 1
push 0
push 0x590d78
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c3069
push 0
push 1
push 1
push 0
push 0x590da4
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c3268
push 0
push 1
push 1
push 0
push 0x590dcc
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
je 0x4c30a5
push 0
push 1
push 1
push 0
push 0x590e04
lea ecx, [ebp - 0x20cc]
call fcn.00403db0
test eax, eax
jne 0x4c3268
push 0
push 0x590e38
lea ecx, [ebp - 0x20cc]
mov dword [ebp - 0x6f48], 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x2864]
call fcn.00405b80
lea ecx, [ebp - 0x2864]
xor edi, edi
call fcn.00405b70
test eax, eax
je 0x4c404a
push 1
push edi
lea ecx, [ebp - 0x2864]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x2710]
call fcn.004022c0
mov ecx, eax
call fcn.00402a90
test al, al
jne 0x4c3153
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5903b8
call fcn.00402700
push eax
lea ecx, [ebp - 0x2710]
call fcn.004044a0
lea ecx, [ebp - 0x2710]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4c4040
lea ecx, [ebp - 0x2864]
inc edi
call fcn.00405b70
cmp edi, eax
jb 0x4c30e2
mov edi, dword [ebp - 0x6f48]
push 0
push 0
push 0
push edi
lea ecx, [ebp - 0x2120]
call fcn.00402700
push eax
push 0x58aa90
lea ecx, [ebp - 0x20cc]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
mov eax, dword [ebp - 0x6f44]
push 0xffffffffffffffff
push 0xf
mov eax, dword [eax + 8]
push dword [eax + 0xa4]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c3268
push 0
push 0
push 0
push 0
push 0
push 0x590c78
push 0x58aa90
push 0
lea ecx, [ebp - 0x2120]
call fcn.00402700
push eax
push 0xf
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f44]
push eax
call fcn.004ae070
push 0
push 0
push 0
push 0x574098
test edi, edi
mov ecx, 0x58fc3c
mov eax, 0x578738
cmove eax, ecx
lea ecx, [ebp - 0x2120]
push eax
push 0x58fc54
push 0x590e40
call fcn.00402700
push eax
push 0x590e78
push 0x5909e4
lea ecx, [ebp - 0x20cc]
call fcn.00402700
push eax
push 0x5908f0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409e90
mov edi, dword [ebp - 0x6f54]
test al, al
jne 0x4c2ad0
mov ecx, dword [ebp - 0x6f4c]
inc ecx
mov dword [ebp - 0x6f4c], ecx
cmp ecx, 2
jb 0x4c2a80
mov eax, dword [ebp - 0x6f44]
push 1
mov eax, dword [eax + 8]
push dword [eax + 0xa4]
mov eax, dword [ebp - 0x6f44]
mov ecx, dword [eax + 4]
call fcn.004378e0
lea ecx, [ebp - 0x6db8]
call fcn.00402240
lea ecx, [ebp - 0x2778]
call fcn.00402240
lea ecx, [ebp - 0x2710]
call fcn.00402240
lea ecx, [ebp - 0x20cc]
call fcn.00402240
lea ecx, [ebp - 0x2408]
call fcn.00409840
lea ecx, [ebp - 0x22bc]
call fcn.00409840
lea ecx, [ebp - 0x2864]
call fcn.00405b10
lea ecx, [ebp - 0x6cd4]
call fcn.0051b5e0
lea ecx, [ebp - 0x6cd8]
call fcn.0051b5e0
lea ecx, [ebp - 0x2198]
call fcn.00402240
lea ecx, [ebp - 0x2430]
call fcn.00402240
lea ecx, [ebp - 0x2b70]
call fcn.0040dee0
lea ecx, [ebp - 0x255c]
call fcn.00402240
lea ecx, [ebp - 0x2314]
call fcn.00402240
lea ecx, [ebp - 0x21b4]
call fcn.00402240
lea ecx, [ebp - 0x27ec]
call fcn.00402240
lea ecx, [ebp - 0x23e0]
call fcn.00402240
lea ecx, [ebp - 0x209c]
mov byte [ebp - 4], 0x45
call fcn.00402240
mov eax, dword [ebp - 0x6f44]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58b348
push 0x572c70
lea ecx, [eax + 0x140]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f8c]
call fcn.00402310
mov ecx, dword [ebp - 0x6f44]
call fcn.004e8ef0
mov edi, dword [ebp - 0x6f44]
test al, al
jne 0x4c416b
test dword [edi + 0x34], 0x1000
jne 0x4c416b
movsd xmm0, qword [edi + 0x368]
ucomisd xmm0, qword [0x5a80c0]
lahf
test ah, 0x44
jp 0x4c416b
push 0
push 0x590ea0
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x590ee8
push dword [eax + 0x38]
call fcn.00435c20
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x26
push dword [eax + 0x34]
call fcn.00438a00
push 0xc
lea ecx, [ebp - 0x21f0]
call fcn.00405e90
lea ecx, [ebp - 0x21f0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x28c4]
mov byte [ebp - 4], 0x69
call fcn.00405e90
lea ecx, [ebp - 0x28c4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2568]
mov byte [ebp - 4], 0x6a
call fcn.00405e90
lea ecx, [ebp - 0x2568]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2680]
mov byte [ebp - 4], 0x6b
call fcn.00405e90
lea ecx, [ebp - 0x2680]
call fcn.00401aa0
push 0
push 0x590f20
lea ecx, [ebp - 0x1fd4]
mov byte [ebp - 4], 0x6c
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004378e0
xor esi, esi
mov dword [ebp - 0x6f40], esi
cmp dword [edi + 0x30], esi
jbe 0x4c3751
lea ecx, [edi + 0x104]
nop dword [eax + eax]
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402a90
test al, al
jne 0x4c373b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590f60
push 0x591008
push esi
lea ecx, [edi + 0x104]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0x21f0]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x21f0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c373b
xor esi, esi
nop dword [eax + eax]
lea eax, [ebp - 0x6cb4]
push eax
push esi
lea ecx, [ebp - 0x1f74]
call fcn.00409e90
test al, al
je 0x4c372f
push 8
push 0
push 0x5755f4
push 0x5910a0
push 1
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2680]
call fcn.004022c0
mov ecx, eax
call fcn.00405700
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5910bc
lea ecx, [ebp - 0x2680]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c3725
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x21f0]
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x2568]
call fcn.00402310
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2568]
call fcn.00402700
push eax
push dword [ebp - 0x6f40]
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x2680]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 4
push 0x18
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c3725
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6f40]
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x2568]
call fcn.00402700
push eax
push 0x18
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push dword [ebp - 0x6cb4]
lea ecx, [edi + 0x114]
push 0x59112c
push dword [ebp - 0x6f40]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2680]
call fcn.00402700
push eax
push 0x591160
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
inc esi
cmp esi, 2
jb 0x4c3570
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f40]
inc esi
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f40], esi
cmp esi, dword [edi + 0x30]
jb 0x4c34f0
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c413b
push 0
push 0x591190
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
xor esi, esi
cmp dword [edi + 0x30], esi
jbe 0x4c3a9e
lea ecx, [edi + 0x104]
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402a90
test al, al
jne 0x4c3a8e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x590f60
push 0x591008
push esi
lea ecx, [edi + 0x104]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0x21f0]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x21f0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
lea eax, [ebp - 0x6cb4]
push eax
push 0
lea ecx, [ebp - 0x1f74]
call fcn.00409e90
test al, al
je 0x4c3922
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591320
push 0x58b5ec
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c3a8e
push 0
push 0
push 0
push 0
push 0x5911e8
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58b5ec
push 4
push 0x1a
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c3a8e
push 0
push 0
push 0
push 0
push 0
push 0
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x21f0]
call fcn.00402700
push eax
push 0x1a
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push 0x5911e8
push 0x59135c
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0x58fcb4
push 0x58b5ec
push 0x591374
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5913a0
push 0x591008
push esi
lea ecx, [edi + 0x104]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0x21f0]
call fcn.00402310
lea ecx, [ebp - 0x21f0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
je 0x4c3a8e
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591320
push 0x58b798
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c3a8e
push 0
push 0
push 0
push 0
push 0x591290
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58b798
push 4
push 0x1a
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c3a8e
push 0
push 0
push 0
push 0
push 0
push 0
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x21f0]
call fcn.00402700
push eax
push 0x1a
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push 0x591290
push 0x59135c
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0x58fcb4
push 0x58b798
push 0x591374
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
inc esi
lea ecx, [edi + 0x104]
cmp esi, dword [edi + 0x30]
jb 0x4c3783
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c413b
xor eax, eax
mov dword [ebp - 0x6f80], 0x584050
mov dword [ebp - 0x6f7c], 0x584078
mov dword [ebp - 0x6f98], 0x58b8b4
mov dword [ebp - 0x6f94], 0x58b9c8
mov dword [ebp - 0x6f58], 0x591440
mov dword [ebp - 0x6f54], 0x5914c8
mov dword [ebp - 0x6f40], eax
cmp dword [edi + 0x30], eax
jbe 0x4c3cec
lea edx, [edi + 0x104]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591558
push 0x591600
push 0x591698
push eax
mov ecx, edx
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0x21f0]
call fcn.00402310
lea ecx, [ebp - 0x21f0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
je 0x4c3cd0
xor esi, esi
nop dword [eax + eax]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c3cca
lea ecx, [ebp - 0x21f0]
call fcn.00402700
mov edx, dword [ebp + esi*4 - 0x6f80]
mov ecx, eax
call fcn.0040cf50
test al, al
je 0x4c3cc0
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591320
push dword [ebp + esi*4 - 0x6f98]
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c3cc0
push 0
push 0
push 0
push 0
push dword [ebp + esi*4 - 0x6f58]
lea ecx, [edi + 0x114]
push dword [ebp - 0x6f40]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push dword [ebp + esi*4 - 0x6f98]
mov eax, dword [edi + 8]
mov ecx, edi
push 4
push 0x1a
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c3cc0
push 0
push 0
push 0
push 0
push 0
push dword [ebp + esi*4 - 0x6f80]
lea ecx, [edi + 0x114]
push dword [ebp - 0x6f40]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x21f0]
call fcn.00402700
push eax
push 0x1a
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push dword [ebp + esi*4 - 0x6f58]
lea ecx, [edi + 0x114]
push 0x59135c
push dword [ebp - 0x6f40]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0x58fcb4
push dword [ebp + esi*4 - 0x6f98]
lea ecx, [ebp - 0x1f80]
push 0x591374
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
inc esi
cmp esi, 2
jb 0x4c3b60
mov dword [ebp - 0x6f6c], esi
mov eax, dword [ebp - 0x6f40]
lea edx, [edi + 0x104]
inc eax
mov dword [ebp - 0x6f40], eax
cmp eax, dword [edi + 0x30]
jb 0x4c3b00
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c413b
mov dword [ebp - 0x6f80], 0x5841b8
lea ecx, [edi + 0x14c]
mov dword [ebp - 0x6f7c], 0x5841d4
xor esi, esi
mov dword [ebp - 0x6f98], 0x58baf4
mov dword [ebp - 0x6f94], 0x58bb20
mov dword [ebp - 0x6f58], 0x591738
mov dword [ebp - 0x6f54], 0x5917c0
nop
push 0
call fcn.00402700
push eax
push 0x591320
push dword [ebp + esi*4 - 0x6f98]
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c3e75
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp + esi*4 - 0x6f80]
lea ecx, [ebp - 0x25d8]
push 0x584150
call fcn.00402700
push eax
lea ecx, [ebp - 0x21f0]
call fcn.00402310
lea ecx, [ebp - 0x21f0]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4c3e75
mov eax, dword [edi + 8]
mov ecx, edi
push 0
push 0
push 0
push 0
push dword [ebp + esi*4 - 0x6f58]
push 0x58aa90
push dword [ebp + esi*4 - 0x6f98]
push 4
push 0x1a
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c3e75
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58aa90
lea ecx, [ebp - 0x21f0]
call fcn.00402700
push eax
push 0
push 0x1a
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push dword [ebp + esi*4 - 0x6f58]
lea ecx, [ebp - 0x1f80]
push 0x59135c
push 0x5909e4
push dword [ebp + esi*4 - 0x6f98]
push 0x591374
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
inc esi
lea ecx, [edi + 0x14c]
cmp esi, 2
jb 0x4c3d40
push 4
lea ecx, [ebp - 0x2364]
mov dword [ebp - 0x6f6c], esi
call fcn.004062b0
lea ecx, [ebp - 0x2364]
call fcn.004097d0
push 4
lea ecx, [ebp - 0x240c]
mov byte [ebp - 4], 0x6d
call fcn.004062b0
lea ecx, [ebp - 0x240c]
call fcn.004097d0
xor eax, eax
mov byte [ebp - 4], 0x6e
mov dword [ebp - 0x6f40], eax
cmp dword [edi + 0x30], eax
jbe 0x4c4112
lea edx, [edi + 0x104]
nop word [eax + eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5918d8
push 0x591960
push 0x5919d8
push eax
mov ecx, edx
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push str.HKU_
lea ecx, [ebp - 0x21f0]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x21f0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2364]
call fcn.00409800
test al, al
je 0x4c40f6
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x2364]
mov dword [ebp - 0x6f6c], esi
call fcn.00409e90
test al, al
je 0x4c40f6
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5919fc
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x21f0]
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x2568]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x2568]
call fcn.00402700
push eax
lea ecx, [ebp - 0x240c]
call fcn.00409800
test al, al
je 0x4c4019
lea ecx, [ebp - 0x240c]
call fcn.00409fb0
cmp eax, 2
jb 0x4c4019
push 0
push 0
push 0
push 0
push 0x591850
push dword [ebp - 0x6f40]
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58bd30
push 4
push 0x1a
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
jne 0x4c4051
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x2364]
mov dword [ebp - 0x6f6c], esi
call fcn.00409e90
test al, al
jne 0x4c3f66
jmp 0x4c40f6
mov edi, 1
jmp 0x4c316d
xor edi, edi
jmp 0x4c316d
mov esi, dword [ebp - 0x6f40]
lea ecx, [edi + 0x114]
push 0
push 0
push 0
push 0
push 0
push 0
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x2568]
call fcn.00402700
push eax
push 0x1a
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push 0x591850
push 0x59135c
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
push 0x58fcb4
push 0x591a38
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f40]
lea edx, [edi + 0x104]
inc eax
mov dword [ebp - 0x6f40], eax
cmp eax, dword [edi + 0x30]
jb 0x4c3ee0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004378e0
lea ecx, [ebp - 0x240c]
call fcn.00409840
lea ecx, [ebp - 0x2364]
call fcn.00409840
lea ecx, [ebp - 0x2680]
call fcn.00402240
lea ecx, [ebp - 0x2568]
call fcn.00402240
lea ecx, [ebp - 0x28c4]
call fcn.00402240
lea ecx, [ebp - 0x21f0]
mov byte [ebp - 4], 0x45
call fcn.00402240
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c6a06
test dword [edi + 0x34], 0x1000
jne 0x4c6a06
push 0
push 0x591a90
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x590ee8
push dword [eax + 0x38]
call fcn.00435c20
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x26
push dword [eax + 0x34]
call fcn.00438a00
push 0xc
lea ecx, [ebp - 0x20e4]
call fcn.00405e90
lea ecx, [ebp - 0x20e4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2028]
mov byte [ebp - 4], 0x6f
call fcn.00405e90
lea ecx, [ebp - 0x2028]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x23d4]
mov byte [ebp - 4], 0x70
call fcn.00405e90
lea ecx, [ebp - 0x23d4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2000]
mov byte [ebp - 4], 0x71
call fcn.00405e90
lea ecx, [ebp - 0x2000]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x22d8]
mov byte [ebp - 4], 0x72
call fcn.00405e90
lea ecx, [ebp - 0x22d8]
call fcn.00401aa0
push 0x24
lea ecx, [ebp - 0x2540]
mov byte [ebp - 4], 0x73
call fcn.004513f0
lea ecx, [ebp - 0x2540]
call fcn.0041ae80
mov byte [ebp - 4], 0x74
xor esi, esi
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
mov dword [ebp - 0x6f54], esi
push dword [eax + 0xa8]
call fcn.004378e0
push esi
push 0x591ad0
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov dword [ebp - 0x6f40], esi
cmp dword [edi + 0x30], esi
jbe 0x4c489e
mov esi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f7c], esi
nop dword [eax]
lea ecx, [ebp - 0x22d8]
call fcn.00402a90
test al, al
je 0x4c42fc
lea eax, [ebp - 0x22d8]
push eax
push 1
lea ecx, [ebp - 0x2184]
call fcn.00402700
push dword [ebp - 0x6f40]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.00462d50
mov esi, dword [ebp - 0x6f7c]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c4898
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b20
lea ecx, [ebp - 0x2184]
call fcn.00402700
push eax
push dword [ebp - 0x6f40]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x58b8]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x58b8]
call fcn.00401350
push 3
lea ecx, [ebp - 0x20e4]
mov byte [ebp - 4], 0x75
call fcn.00403b90
lea ecx, [ebp - 0x58b8]
call fcn.00401490
test al, al
je 0x4c486a
nop
push 1
lea ecx, [ebp - 0x58b8]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2028]
call fcn.00401ef0
push 0x591b5c
lea ecx, [ebp - 0x2028]
call fcn.004020e0
test al, al
je 0x4c43ee
push 0
push 1
push 1
push 0
push 0x591b6c
lea ecx, [ebp - 0x2028]
call fcn.00403db0
cmp eax, 1
jne 0x4c4857
inc dword [ebp - 0x6f54]
lea ecx, [ebp - 0x58b8]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b80
push 1
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402310
push 0x100
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041aef0
test al, al
je 0x4c4857
lea eax, [ebp - 0x2000]
push eax
push 0x5759e4
push 0x591ba8
lea ecx, [ebp - 0x2540]
call fcn.0041c080
test eax, eax
je 0x4c4618
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4618
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4618
push 0x591bf8
lea ecx, [ebp - 0x2000]
call fcn.00401fb0
test al, al
jne 0x4c4618
push 0
push 1
push 1
push 0
push 0x591c10
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4618
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4618
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591c44
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c4618
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x591c80
push 0
push 0x6f
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c4618
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0x591ba8
push 0x6f
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
push 0x591cc8
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x2a54]
mov dword [ebp - 0x6f2c], 0
push eax
push 0x5759e4
xorps xmm0, xmm0
lea ecx, [ebp - 0x2540]
push 0x591ce8
movups xmmword [ebp - 0x6f3c], xmm0
call fcn.0041bce0
test al, al
je 0x4c4857
lea eax, [ebp - 0x2a54]
push eax
lea eax, [ebp - 0x6f3c]
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041cd40
test al, al
je 0x4c4857
lea eax, [ebp - 0x2000]
push eax
lea eax, [ebp - 0x6f3c]
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041ca50
test eax, eax
je 0x4c4836
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4857
push eax
push 1
push 1
push eax
push 0x591d14
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4857
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4857
push eax
push 1
push 1
push eax
push 0x591d38
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4857
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4857
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591d54
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c4836
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x591d80
push 0
push 0x6f
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c4836
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0x591ce8
push 0x6f
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
push 0x591d9c
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x2a54]
push eax
lea eax, [ebp - 0x6f3c]
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041cd40
test al, al
jne 0x4c4671
lea ecx, [ebp - 0x58b8]
call fcn.00401450
test al, al
jne 0x4c43a0
lea ecx, [ebp - 0x58b8]
mov byte [ebp - 4], 0x74
call fcn.004013a0
mov eax, dword [ebp - 0x6f40]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], esi
mov dword [ebp - 0x6f40], eax
cmp eax, dword [edi + 0x30]
jb 0x4c42b0
mov esi, dword [ebp - 0x6f54]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c69c0
test esi, esi
jne 0x4c48d6
lea ecx, [ebp - 0x22d8]
call fcn.00402a90
test al, al
je 0x4c48d6
push esi
push 0x591dc8
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
jmp 0x4c69c0
push 0
push 0x591e18
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4c4c70
mov esi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f40], esi
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c4c70
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b20
lea ecx, [ebp - 0x2184]
call fcn.00402700
push eax
push dword [ebp - 0x6f54]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x4cd8]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x4cd8]
call fcn.00401350
push 3
lea ecx, [ebp - 0x20e4]
mov byte [ebp - 4], 0x76
call fcn.00403b90
lea ecx, [ebp - 0x4cd8]
call fcn.00401490
test al, al
je 0x4c4c42
nop dword [eax + eax]
push 1
lea ecx, [ebp - 0x4cd8]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2028]
call fcn.00401ef0
push 0x591b5c
lea ecx, [ebp - 0x2028]
call fcn.004020e0
test al, al
je 0x4c49fe
push 0
push 1
push 1
push 0
push 0x591b6c
lea ecx, [ebp - 0x2028]
call fcn.00403db0
cmp eax, 1
jne 0x4c4c2f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b80
push 1
lea ecx, [ebp - 0x4cd8]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402310
push 0x100
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041aef0
test al, al
je 0x4c4c2f
lea eax, [ebp - 0x2000]
push eax
push 0x5759e4
push 0x591e58
lea ecx, [ebp - 0x2540]
call fcn.0041c080
test eax, eax
je 0x4c4c2f
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4c2f
push eax
push 1
push 1
push eax
push 0x591d14
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4c2f
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4c2f
push eax
push 1
push 1
push eax
push 0x591d38
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4c2f
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c4c2f
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591ec8
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c4c2f
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x591f08
push 0
push 0x70
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4c4c29
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0x591f38
push 0x70
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2028]
call fcn.00402700
mov esi, dword [ebp - 0x6f40]
mov ecx, esi
push eax
push 0x59135c
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
push 0x591f98
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4c4c2f
mov esi, dword [ebp - 0x6f40]
lea ecx, [ebp - 0x4cd8]
call fcn.00401450
test al, al
jne 0x4c49b0
lea ecx, [ebp - 0x4cd8]
mov byte [ebp - 4], 0x74
call fcn.004013a0
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f54], eax
cmp eax, dword [edi + 0x30]
jb 0x4c4908
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c69c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591fe0
lea ecx, [edi + 0x314]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x59202c
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4c52a1
mov esi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f40], esi
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c52a1
push 0xc
lea ecx, [ebp - 0x2734]
call fcn.00405e90
lea ecx, [ebp - 0x2734]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x276c]
mov byte [ebp - 4], 0x77
call fcn.00405e90
lea ecx, [ebp - 0x276c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2728]
mov byte [ebp - 4], 0x78
call fcn.00405e90
lea ecx, [ebp - 0x2728]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x268c]
mov byte [ebp - 4], 0x79
call fcn.00405e90
lea ecx, [ebp - 0x268c]
call fcn.00401aa0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b20
lea ecx, [ebp - 0x2184]
mov byte [ebp - 4], 0x7a
call fcn.00402700
push eax
push dword [ebp - 0x6f54]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x4818]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x4818]
call fcn.00401350
push 3
lea ecx, [ebp - 0x20e4]
mov byte [ebp - 4], 0x7b
call fcn.00403b90
lea ecx, [ebp - 0x4818]
call fcn.00401490
test al, al
je 0x4c5247
nop dword [eax]
nop dword [eax + eax]
push 1
lea ecx, [ebp - 0x4818]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2028]
call fcn.00401ef0
push 0x591b5c
lea ecx, [ebp - 0x2028]
call fcn.004020e0
test al, al
je 0x4c4e4e
push 0
push 1
push 1
push 0
push 0x591b6c
lea ecx, [ebp - 0x2028]
call fcn.00403db0
cmp eax, 1
jne 0x4c5234
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b80
push 1
lea ecx, [ebp - 0x4818]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402310
push 0x100
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041aef0
test al, al
je 0x4c5234
lea eax, [ebp - 0x2a68]
mov dword [ebp - 0x6ec8], 0
push eax
push 0x5759e4
xorps xmm0, xmm0
lea ecx, [ebp - 0x2540]
push 0x592060
movups xmmword [ebp - 0x6ed8], xmm0
call fcn.0041bce0
test al, al
je 0x4c5234
lea eax, [ebp - 0x2a68]
push eax
lea eax, [ebp - 0x6ed8]
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041c670
test al, al
je 0x4c5234
nop word [eax + eax]
lea eax, [ebp - 0x2734]
push eax
lea eax, [ebp - 0x6ed8]
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041beb0
test al, al
je 0x4c5213
lea ecx, [ebp - 0x2734]
call fcn.00402700
lea ecx, [ebp - 0x1f98]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4c520d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59208c
lea ecx, [ebp - 0x2734]
call fcn.00402700
push eax
push 0x5920b0
lea ecx, [ebp - 0x2728]
call fcn.00402310
lea eax, [ebp - 0x276c]
push eax
push 0x5759e4
lea ecx, [ebp - 0x2728]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041c080
test eax, eax
je 0x4c520d
lea ecx, [ebp - 0x276c]
call fcn.00402700
lea ecx, [ebp - 0x1f98]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4c520d
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5910bc
lea ecx, [ebp - 0x276c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c520d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5920e0
lea ecx, [ebp - 0x2734]
call fcn.00402700
push eax
push 0x5920b0
lea ecx, [ebp - 0x2728]
call fcn.00402310
lea eax, [ebp - 0x268c]
push eax
push 0x5759e4
lea ecx, [ebp - 0x2728]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041c080
test eax, eax
je 0x4c50b8
push 0
push 1
push 1
push 5
push 0x5736bc
lea ecx, [ebp - 0x268c]
call fcn.00403db0
test eax, eax
jne 0x4c50b8
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push 0x5920f0
push 1
lea ecx, [ebp - 0x4818]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x268c]
call fcn.004044a0
lea ecx, [ebp - 0x268c]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4c520d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2734]
call fcn.00402700
push eax
push 0x5920b0
lea ecx, [ebp - 0x2728]
call fcn.00402310
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x268c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x276c]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0
push 0x71
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4c520d
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x268c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2728]
call fcn.00402700
push eax
push 0x71
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x268c]
call fcn.00402700
mov esi, dword [ebp - 0x6f40]
mov ecx, esi
push eax
push 0x590940
call fcn.00402700
push eax
push 0x59210c
lea ecx, [ebp - 0x2734]
call fcn.00402700
push eax
push 0x577c70
lea ecx, [ebp - 0x276c]
call fcn.00402700
push eax
push 0x592130
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4c5213
mov esi, dword [ebp - 0x6f40]
lea eax, [ebp - 0x2a68]
push eax
lea eax, [ebp - 0x6ed8]
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041c670
test al, al
jne 0x4c4f10
lea ecx, [ebp - 0x4818]
call fcn.00401450
test al, al
jne 0x4c4e00
lea ecx, [ebp - 0x4818]
call fcn.004013a0
lea ecx, [ebp - 0x268c]
call fcn.00402240
lea ecx, [ebp - 0x2728]
call fcn.00402240
lea ecx, [ebp - 0x276c]
call fcn.00402240
lea ecx, [ebp - 0x2734]
mov byte [ebp - 4], 0x74
call fcn.00402240
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f54], eax
cmp eax, dword [edi + 0x30]
jb 0x4c4ce1
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c69c0
push 0
push 0x592160
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
lea ecx, [ebp - 0x6d9c]
push 1
push 0
mov eax, dword [eax + 0xa8]
mov dword [ebp - 0x6da4], eax
mov dword [ebp - 0x6da0], 0x72
call fcn.00401b70
lea ecx, [ebp - 0x1f8c]
mov byte [ebp - 4], 0x7c
call fcn.00402700
lea ecx, [edi + 0x14c]
mov dword [ebp - 0x6d90], eax
mov dword [ebp - 0x6d8c], 0
call fcn.00402700
mov dword [ebp - 0x6d88], eax
lea ecx, [ebp - 0x6d7c]
lea eax, [ebp - 0x1fd4]
push 1
mov dword [ebp - 0x6d84], eax
mov eax, dword [edi + 4]
push 0x5921b0
mov dword [ebp - 0x6d80], eax
call fcn.00401b70
push 0xc
lea ecx, [ebp - 0x224c]
mov byte [ebp - 4], 0x7d
call fcn.00405e90
lea ecx, [ebp - 0x224c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2234]
mov byte [ebp - 4], 0x7e
call fcn.00405e90
lea ecx, [ebp - 0x2234]
call fcn.00401aa0
mov ecx, edi
mov byte [ebp - 4], 0x7f
call fcn.004e8ef0
test al, al
jne 0x4c699f
xor esi, esi
mov dword [ebp - 0x6f40], esi
cmp dword [edi + 0x30], esi
jbe 0x4c5537
nop dword [eax]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c5537
push esi
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.004022a0
cmp eax, 3
jl 0x4c5527
lea eax, [ebp - 0x6d9c]
push eax
push 1
lea ecx, [ebp - 0x2184]
call fcn.00402700
push dword [ebp - 0x6f40]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.00462d50
mov esi, dword [ebp - 0x6f40]
test al, al
je 0x4c5527
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24c8]
mov dword [ebp - 0x6d8c], eax
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 - 0x224c]
call fcn.00402310
lea ecx, [ebp - 0x224c]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4c5527
lea ecx, [ebp - 0x224c]
call fcn.00402700
push eax
lea eax, [ebp - 0x6da4]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c5537
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x25e4]
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 - 0x224c]
call fcn.00402310
lea ecx, [ebp - 0x224c]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4c5527
push 0
lea ecx, [ebp - 0x224c]
call fcn.00402950
lea ecx, [ebp - 0x224c]
call fcn.00402700
push eax
lea eax, [ebp - 0x6da4]
mov ecx, edi
push eax
call fcn.004baa50
inc esi
mov dword [ebp - 0x6f40], esi
cmp esi, dword [edi + 0x30]
jb 0x4c53a0
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c699f
lea ecx, [ebp - 0x2638]
mov dword [ebp - 0x6d8c], 0x58aa90
call fcn.00402700
push eax
lea eax, [ebp - 0x6da4]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c699f
lea eax, [ebp - 0x2644]
push eax
lea ecx, [ebp - 0x224c]
call fcn.00401f00
push 0
lea ecx, [ebp - 0x224c]
call fcn.00402950
lea ecx, [ebp - 0x224c]
call fcn.00402700
push eax
lea eax, [ebp - 0x6da4]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c699f
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c562a
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
nop dword [eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5921d0
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c55e0
mov esi, dword [ebp - 0x6f68]
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 0x592260
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c5691
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 0x592260
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4c589c
mov eax, dword [ebp - 0x6f68]
mov esi, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f7c], eax
nop dword [eax]
push 0
push 0x20019
lea ecx, [eax + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c587a
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c589c
lea eax, [ebp - 0x2234]
push eax
push 0x572c78
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c587a
push 0
push 1
push 1
push 0
push 0x5922ec
lea ecx, [ebp - 0x2234]
call fcn.00403db0
lea ecx, [ebp - 0x2234]
mov dword [ebp - 0x6f48], eax
call fcn.004022a0
mov edx, dword [ebp - 0x6f48]
lea ecx, [edx + 0xa]
cmp eax, ecx
jle 0x4c587a
lea eax, [edx + 0xb]
push eax
lea ecx, [ebp - 0x2234]
call fcn.00403bf0
push 3
lea ecx, [ebp - 0x2234]
call fcn.00404a70
lea ecx, [ebp - 0x2234]
call fcn.00402a90
test al, al
jne 0x4c587a
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x58fb44
lea ecx, [ebp - 0x2234]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c587a
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2234]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c108
push 0
push 0x72
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c587a
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f7c]
push eax
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x72
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2234]
call fcn.00402700
push eax
push 0x592308
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
cmp eax, dword [ebp - 0x6f74]
mov dword [ebp - 0x6f54], eax
mov eax, dword [ebp - 0x6f7c]
jb 0x4c56c0
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c699f
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c5910
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592360
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c58c6
mov esi, dword [ebp - 0x6f68]
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 0x5923a8
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c5977
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 0x5923a8
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
push 0
push 0x5923ec
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov esi, dword [ebp - 0x6f74]
mov dword [ebp - 0x6f7c], 0
test esi, esi
je 0x4c5bd4
mov eax, dword [ebp - 0x6f68]
mov esi, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f54], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c5bce
mov ecx, dword [ebp - 0x6f54]
push 0
push 0x20019
lea ecx, [ecx + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
lea eax, [ebp - 0x2000]
push eax
push 0x58c2bc
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c5bb2
lea eax, [ebp - 0x21a8]
mov dword [ebp - 0x21a8], 0
push eax
push 0x58c35c
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4c5a36
cmp dword [ebp - 0x21a8], 0
jne 0x4c5bb2
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c5bb2
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c5bb2
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c5bb2
push eax
push 1
push 1
push eax
push 0x591c10
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c5bb2
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x59242c
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c5bb2
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c2bc
push 0
push 0x74
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c5bb2
push 0
push 0
push 0
push 0
push 0
push 0x58c2bc
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x74
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
push 0x592468
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c59b5
mov esi, dword [ebp - 0x6f74]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c699f
push 0xc
lea ecx, [ebp - 0x2698]
call fcn.00405e90
lea ecx, [ebp - 0x2698]
call fcn.00401aa0
mov byte [ebp - 4], 0x80
mov dword [ebp - 0x6f7c], 0
test esi, esi
je 0x4c5ead
mov eax, dword [ebp - 0x6f68]
mov esi, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f54], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c5ea7
mov ecx, dword [ebp - 0x6f54]
push 0
push 0x20019
lea ecx, [ecx + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
lea eax, [ebp - 0x2000]
push eax
push 0x58c3fc
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c5e8b
lea eax, [ebp - 0x21a8]
mov dword [ebp - 0x21a8], 0
push eax
push 0x58c4fc
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4c5ca6
cmp dword [ebp - 0x21a8], 0
je 0x4c5e8b
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c5e8b
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c5e8b
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c5e8b
push eax
push 1
push 1
push eax
push 0x591c10
lea ecx, [ebp - 0x2000]
call fcn.00403db0
test eax, eax
jne 0x4c5e8b
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x59242c
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c5e8b
lea eax, [ebp - 0x2698]
push eax
push 0x58c4c8
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c5e8b
lea ecx, [ebp - 0x2698]
call fcn.00402a90
test al, al
jne 0x4c5e8b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5924b8
lea ecx, [ebp - 0x2698]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2234]
call fcn.00402310
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2234]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0
push 0x74
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c5e8b
push 0
push 0
push 0
push 0
push 0
push 0x58c3fc
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x74
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
push 0x5924e0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c5c25
mov esi, dword [ebp - 0x6f74]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c6994
mov dword [ebp - 0x6f7c], 0
test esi, esi
je 0x4c613c
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f48], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c613c
mov eax, dword [ebp - 0x6f48]
add eax, esi
push 0
push 0x20019
mov ecx, eax
mov dword [ebp - 0x6f54], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c611a
lea eax, [ebp - 0x21a8]
mov dword [ebp - 0x21a8], 0
push eax
push 0x592540
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4c611a
cmp dword [ebp - 0x21a8], 4
jne 0x4c611a
mov ecx, dword [ebp - 0x6f54]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592564
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c611a
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409f10
test al, al
je 0x4c6114
nop word [eax + eax]
lea eax, [ebp - 0x2000]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c60f2
lea ecx, [ebp - 0x2000]
call fcn.00402a90
test al, al
jne 0x4c60f2
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2000]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c6b8
push 0
push 0x74
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f94], eax
cmp eax, 0xffffffff
je 0x4c60f2
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0
call fcn.00402700
push eax
push 0x74
push dword [ebp - 0x6f94]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2000]
call fcn.00402700
push eax
push 0x592590
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
call fcn.00409f10
test al, al
jne 0x4c5fe0
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f40]
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c5ee8
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c6994
push 0
push 0x5925d8
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4c654d
mov esi, dword [ebp - 0x6f70]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c654d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b20
lea ecx, [ebp - 0x2184]
call fcn.00402700
push eax
push dword [ebp - 0x6f54]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x3c38]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3c38]
call fcn.00401350
push 3
lea ecx, [ebp - 0x20e4]
mov byte [ebp - 4], 0x81
call fcn.00403b90
lea ecx, [ebp - 0x3c38]
call fcn.00401490
test al, al
je 0x4c6525
nop word [eax + eax]
push 1
lea ecx, [ebp - 0x3c38]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2028]
call fcn.00401ef0
push 0x591b5c
lea ecx, [ebp - 0x2028]
call fcn.004020e0
test al, al
je 0x4c626e
push 0
push 1
push 1
push 0
push 0x591b6c
lea ecx, [ebp - 0x2028]
call fcn.00403db0
cmp eax, 1
jne 0x4c6512
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b80
push 1
lea ecx, [ebp - 0x3c38]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402310
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4c63c0
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591320
push 0x58c7bc
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c63c0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c7bc
push 0
push 0x73
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c6512
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0
push 0x73
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x592610
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
push 0x58c7bc
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591320
push 0x58c8b8
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c6512
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59266c
push 1
lea ecx, [ebp - 0x3c38]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20e4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402310
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4c6512
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c8b8
push 0
push 0x73
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c6512
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0
push 0x73
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x592610
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
push 0x58c8b8
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea ecx, [ebp - 0x3c38]
call fcn.00401450
test al, al
jne 0x4c6220
lea ecx, [ebp - 0x3c38]
mov byte [ebp - 4], 0x80
call fcn.004013a0
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f54], eax
cmp eax, dword [edi + 0x30]
jb 0x4c6177
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c6994
lea eax, [ebp - 0x22d8]
push eax
lea ecx, [ebp - 0x2028]
call fcn.00401f00
push 1
lea ecx, [ebp - 0x2028]
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 0x592688
lea ecx, [ebp - 0x2028]
call fcn.004040f0
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4c6744
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591320
push 0x58c988
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c6744
push 0
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2540]
call fcn.0041aef0
test al, al
je 0x4c6744
lea eax, [ebp - 0x29f4]
push eax
push 0x5759e4
push 0x591ba8
lea ecx, [ebp - 0x2540]
call fcn.0041bce0
test al, al
jne 0x4c6687
lea eax, [ebp - 0x29f4]
push eax
push 0x5759e4
push 0x591ce8
lea ecx, [ebp - 0x2540]
call fcn.0041bce0
test al, al
jne 0x4c6687
lea eax, [ebp - 0x29f4]
push eax
push 0x5759e4
push 0x58bf40
lea ecx, [ebp - 0x2540]
call fcn.0041bce0
test al, al
jne 0x4c6687
lea eax, [ebp - 0x29f4]
push eax
push 0x5759e4
push 0x592060
lea ecx, [ebp - 0x2540]
call fcn.0041bce0
test al, al
je 0x4c6744
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58aa90
push 0x58c988
push 0
push 0x73
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4c6744
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58aa90
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0
push 0x73
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2028]
call fcn.00402700
push eax
push 0x59135c
push 0x5909e4
push 0x5926b0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x591320
push 0x58ca88
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c6994
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c67d0
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592360
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c6786
mov esi, dword [ebp - 0x6f68]
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 0x592360
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c6837
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 0x592360
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6f7c], 0
jbe 0x4c6981
mov eax, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f54], eax
nop dword [eax]
mov ecx, esi
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
je 0x4c6965
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c6981
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
lea ecx, [ecx + esi]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58ca88
push 0
push 0x73
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c6965
mov ecx, dword [ebp - 0x6f54]
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0
mov ecx, esi
call fcn.00402700
push eax
push 0x73
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x592610
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0x59135c
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x58fcb4
push 0x58ca88
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c6860
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004378e0
lea ecx, [ebp - 0x2698]
call fcn.00402240
lea ecx, [ebp - 0x2234]
call fcn.00402240
lea ecx, [ebp - 0x224c]
call fcn.00402240
lea ecx, [ebp - 0x6da4]
call fcn.004d7f70
lea ecx, [ebp - 0x2540]
call fcn.00426960
lea ecx, [ebp - 0x22d8]
call fcn.00402240
lea ecx, [ebp - 0x2000]
call fcn.00402240
lea ecx, [ebp - 0x23d4]
call fcn.00402240
lea ecx, [ebp - 0x2028]
call fcn.00402240
lea ecx, [ebp - 0x20e4]
mov byte [ebp - 4], 0x45
call fcn.00402240
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9e3d
test dword [edi + 0x34], 0x1000
jne 0x4c9e3d
push 0
push 0x592708
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x592748
push dword [eax + 0x38]
call fcn.00435c20
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x28
push dword [eax + 0x34]
call fcn.00438a00
mov eax, dword [edi + 0x30]
xor esi, esi
mov dword [ebp - 0x6fe8], 0x592784
mov dword [ebp - 0x6fe4], 0x592794
mov dword [ebp - 0x6fe0], 0x5927a4
mov dword [ebp - 0x6fdc], 0x5927bc
mov dword [ebp - 0x6fd8], 0x5927d0
mov dword [ebp - 0x6fd4], 0x580450
mov dword [ebp - 0x6fd0], 0x591bf8
mov dword [ebp - 0x6fcc], 0x591c2c
mov dword [ebp - 0x6fc4], 0x58cb54
mov dword [ebp - 0x6fc0], 0x58cb90
mov dword [ebp - 0x6fbc], 0x58cb78
mov dword [ebp - 0x6fb8], 0x580438
mov dword [ebp - 0x6fb4], 0x58cc14
mov dword [ebp - 0x6fb0], 0x58cc94
test eax, eax
je 0x4c6b4a
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5803e0
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c6b00
mov esi, dword [ebp - 0x6f68]
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 0x5927e8
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c6bb1
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 0x5927e8
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
push 0xc
lea ecx, [ebp - 0x2010]
call fcn.00405e90
lea ecx, [ebp - 0x2010]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2398]
mov byte [ebp - 4], 0x82
call fcn.00405e90
lea ecx, [ebp - 0x2398]
call fcn.00401aa0
mov byte [ebp - 4], 0x83
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004378e0
push 0
push 0x592840
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov esi, dword [ebp - 0x6f74]
mov dword [ebp - 0x6f7c], 0
test esi, esi
je 0x4c6e58
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f48], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c6e52
mov eax, dword [ebp - 0x6f48]
add eax, esi
push 0
push 0x20019
mov ecx, eax
mov dword [ebp - 0x6f94], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c6e30
xor esi, esi
lea eax, [ebp - 0x2010]
push eax
push dword [ebp + esi*4 - 0x6fc4]
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c6e1a
lea ecx, [ebp - 0x2010]
call fcn.00402a90
test al, al
jne 0x4c6e1a
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x59289c
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c6e1a
xor eax, eax
mov dword [ebp - 0x6f54], eax
nop dword [eax + eax]
push 0
push 1
push 1
push 0
push dword [ebp + eax*4 - 0x6fe8]
lea ecx, [ebp - 0x2010]
call fcn.00403db0
dec eax
cmp eax, 0x10
jbe 0x4c6e1a
mov eax, dword [ebp - 0x6f54]
inc eax
mov dword [ebp - 0x6f54], eax
cmp eax, 8
jb 0x4c6cf0
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
push dword [ebp + esi*4 - 0x6fc4]
mov eax, dword [edi + 8]
mov ecx, edi
push 1
push 0x1f
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f54], eax
cmp eax, 0xffffffff
je 0x4c6e1a
push 0
push 0
push 0
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0
push dword [ebp + esi*4 - 0x6fc4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f94]
push eax
push 0
call fcn.00402700
push eax
push 0x1f
push dword [ebp - 0x6f54]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0x5928c0
call fcn.00402700
push eax
push 0x58fcb4
push dword [ebp + esi*4 - 0x6fc4]
lea ecx, [ebp - 0x1f80]
push 0x5908f0
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
inc esi
cmp esi, 6
jb 0x4c6c81
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f40]
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c6c40
mov esi, dword [ebp - 0x6f74]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9e23
push 0x18
lea ecx, [ebp - 0x265c]
call fcn.004068b0
lea ecx, [ebp - 0x265c]
call fcn.004059c0
mov byte [ebp - 4], 0x84
mov dword [ebp - 0x6f4c], 0
test esi, esi
je 0x4c714f
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f48], eax
nop
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c714f
mov eax, dword [ebp - 0x6f48]
add eax, esi
push 0
push 0x20019
mov ecx, eax
mov dword [ebp - 0x6f94], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
lea ecx, [ebp - 0x1f74]
call fcn.00405b70
test eax, eax
je 0x4c712d
lea eax, [ebp - 0x2010]
push eax
push 0x5804fc
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c712d
push 1
push 0x5742ac
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
lea ecx, [ebp - 0x265c]
call fcn.00405b80
xor esi, esi
lea ecx, [ebp - 0x265c]
mov dword [ebp - 0x6f6c], esi
call fcn.00405b70
test eax, eax
je 0x4c7127
push esi
lea ecx, [ebp - 0x265c]
call fcn.00405b40
push eax
lea ecx, [ebp - 0x2010]
call fcn.00401ef0
lea ecx, [ebp - 0x2010]
call fcn.00402a90
test al, al
jne 0x4c710d
xor eax, eax
mov byte [ebp - 0x6f7c], 1
mov dword [ebp - 0x6f54], eax
nop dword [eax]
push 0
push 1
push 1
push 0
push dword [ebp + eax*4 - 0x6fe8]
lea ecx, [ebp - 0x2010]
call fcn.00403db0
push 0
lea ecx, [edi + 0x14c]
mov esi, eax
call fcn.00402700
push eax
push 0x59289c
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
lea ecx, [esi - 1]
mov edx, 0x10
cmp edx, ecx
mov edx, dword [ebp - 0x6f7c]
sbb cl, cl
and cl, dl
xor edx, edx
test al, al
movzx ecx, cl
cmove edx, ecx
test dl, dl
je 0x4c7107
mov eax, dword [ebp - 0x6f54]
inc eax
mov dword [ebp - 0x6f7c], edx
mov dword [ebp - 0x6f54], eax
cmp eax, 7
jb 0x4c6f90
test dl, dl
je 0x4c7107
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x5804fc
push 1
push 0x1f
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4c7107
push 0
push 0
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0
push 0x5804fc
call fcn.00402700
mov ecx, dword [ebp - 0x6f94]
push eax
push 0
call fcn.00402700
push eax
push 0x1f
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0x5928c0
call fcn.00402700
push eax
push 0x58fcb4
push 0x5804fc
push 0x5908f0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov esi, dword [ebp - 0x6f6c]
inc esi
lea ecx, [ebp - 0x265c]
mov dword [ebp - 0x6f6c], esi
call fcn.00405b70
cmp esi, eax
jb 0x4c6f52
mov esi, dword [ebp - 0x6f40]
mov eax, dword [ebp - 0x6f4c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f4c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c6eb0
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9e18
push 4
lea ecx, [ebp - 0x1fe4]
call fcn.004062b0
lea ecx, [ebp - 0x1fe4]
call fcn.004097d0
push 4
lea ecx, [ebp - 0x2084]
mov byte [ebp - 4], 0x85
call fcn.004062b0
lea ecx, [ebp - 0x2084]
call fcn.004097d0
mov byte [ebp - 4], 0x86
xor esi, esi
mov eax, dword [edi + 0x30]
test eax, eax
je 0x4c71fb
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x580888
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c71b1
mov esi, dword [ebp - 0x6f68]
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 0x5928d8
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c7262
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 0x5928d8
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
push 0xc
lea ecx, [ebp - 0x2108]
call fcn.00405e90
lea ecx, [ebp - 0x2108]
call fcn.00401aa0
push 0
push 0x592940
lea ecx, [ebp - 0x1fd4]
mov byte [ebp - 4], 0x87
call fcn.004174b0
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6f7c], 0
jbe 0x4c75d9
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f48], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c75d9
mov eax, dword [ebp - 0x6f48]
add eax, esi
push 0
push 0x20019
mov ecx, eax
mov dword [ebp - 0x6f94], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c75b7
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409e90
test al, al
je 0x4c75b1
mov ecx, dword [ebp - 0x6f94]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fe4]
call fcn.00409800
test al, al
je 0x4c758f
lea eax, [ebp - 0x2108]
push eax
push 0x578090
lea ecx, [ebp - 0x1fe4]
call fcn.004099d0
push 0
lea ecx, [ebp - 0x2108]
call fcn.00402210
cmp word [eax], 0x40
jne 0x4c73ea
push 0
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
push 0x80
lea ecx, [ebp - 0x2108]
call fcn.00402cb0
push 0
push 0x80
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
call dword [0x5534f8]
lea eax, [ebp - 0x2010]
push eax
push 0x584510
lea ecx, [ebp - 0x1fe4]
call fcn.004099d0
lea ecx, [ebp - 0x2108]
call fcn.00402a90
test al, al
je 0x4c7423
lea ecx, [ebp - 0x2010]
call fcn.00402a90
test al, al
jne 0x4c758f
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x592994
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c758f
xor eax, eax
mov dword [ebp - 0x6f54], eax
nop dword [eax]
push 0
push 1
push 1
push 0
push dword [ebp + eax*4 - 0x6fe8]
lea ecx, [ebp - 0x2010]
call fcn.00403db0
dec eax
cmp eax, 0x10
jbe 0x4c758f
mov eax, dword [ebp - 0x6f54]
inc eax
mov dword [ebp - 0x6f54], eax
cmp eax, 7
jb 0x4c7460
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 1
push 0x20
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f54], eax
cmp eax, 0xffffffff
je 0x4c758f
push 0
push 0
push 0
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0
push 0
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
push 0x20
push dword [ebp - 0x6f54]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0x5928c0
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
push 0x5908f0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
call fcn.00409e90
test al, al
jne 0x4c7323
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f40]
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c72c1
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9df7
push 0
push 0x5929bc
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
push 0xc
lea ecx, [ebp - 0x20b4]
call fcn.00405e90
lea ecx, [ebp - 0x20b4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2380]
mov byte [ebp - 4], 0x88
call fcn.00405e90
lea ecx, [ebp - 0x2380]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x20f0]
mov byte [ebp - 4], 0x89
call fcn.00405e90
lea ecx, [ebp - 0x20f0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x21fc]
mov byte [ebp - 4], 0x8a
call fcn.00405e90
lea ecx, [ebp - 0x21fc]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2374]
mov byte [ebp - 4], 0x8b
call fcn.00405e90
lea ecx, [ebp - 0x2374]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x20c0]
mov byte [ebp - 4], 0x8c
call fcn.00405e90
lea ecx, [ebp - 0x20c0]
call fcn.00401aa0
push 0xfc8
lea ecx, [ebp - 0x6880]
mov byte [ebp - 4], 0x8d
call fcn.00412d70
lea ecx, [ebp - 0x6880]
call fcn.0040d490
mov byte [ebp - 4], 0x8e
xor esi, esi
mov eax, dword [edi + 0x30]
test eax, eax
je 0x4c772a
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
nop dword [eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d0a0
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c76e0
mov esi, dword [ebp - 0x6f68]
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 0x58d370
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c7791
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 0x58d370
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4c7cbd
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f48], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c7cbd
mov ecx, dword [ebp - 0x6f48]
push 1
lea ecx, [ecx + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.004022c0
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c7c9b
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409f10
test al, al
je 0x4c7c95
nop word [eax + eax]
mov ecx, dword [ebp - 0x6cb4]
call fcn.0040c5b0
test al, al
je 0x4c7c73
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
lea ecx, [edi + 0x314]
push 0x5929fc
call fcn.00402700
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402310
lea ecx, [ebp - 0x20c0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4c7c73
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402310
push 0
push 1
push 1
push 0
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2380]
call fcn.00403db0
test eax, eax
jne 0x4c7c73
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2380]
call fcn.004040f0
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2374]
call fcn.00401ef0
lea eax, [ebp - 0x20b4]
mov ecx, edi
push eax
lea eax, [ebp - 0x20f0]
push eax
lea eax, [ebp - 0x2374]
push eax
call fcn.004d8070
lea ecx, [ebp - 0x20f0]
call fcn.00402a90
test al, al
je 0x4c796a
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x20f0]
call fcn.00401ef0
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x592a14
lea ecx, [ebp - 0x20f0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c7c73
push 0
push 1
push 1
push 0
push 0x592a28
lea ecx, [ebp - 0x20f0]
call fcn.00403db0
cmp eax, 1
je 0x4c7c73
push 0
push 1
push 1
push 0
push 0x592a44
lea ecx, [ebp - 0x20f0]
call fcn.00403db0
cmp eax, 1
je 0x4c7c73
push 0
push 1
push 1
push 0
push 0x572c78
lea ecx, [ebp - 0x20f0]
call fcn.00403db0
cmp eax, 1
je 0x4c7c73
lea ecx, [ebp - 0x20b4]
call fcn.00402a90
lea ecx, [ebp - 0x20b4]
test al, al
je 0x4c7a1c
push 0x592a68
call fcn.00401ef0
jmp 0x4c7a3c
push 0
push 0
push 0x572c78
push 0x5735d0
call fcn.00404790
push 0
lea ecx, [ebp - 0x20b4]
call fcn.00402b90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x1f98]
push 0x577640
call fcn.00402700
push eax
lea ecx, [ebp - 0x2148]
call fcn.00402310
push 0
lea ecx, [ebp - 0x2148]
call fcn.00402700
push eax
lea eax, [ebp - 0x20b4]
mov ecx, edi
push eax
call fcn.004dd140
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
push 0
call dword [0x5538ac]
test eax, eax
jne 0x4c7c73
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x6880]
call fcn.0040d840
test al, al
je 0x4c7b6c
push 0x572c78
push str.CompanyName
lea ecx, [ebp - 0x6880]
call fcn.0040d5a0
push eax
lea ecx, [ebp - 0x21fc]
call fcn.00401ef0
push 0
push 1
push 1
push 0
push str.Microsoft
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c7c73
push 0
push 1
push 1
push 0
push 0x592ac4
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c7c73
push 0
push 1
push 1
push 0
push 0x592ae0
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c7c73
push 0
push 1
push 1
push 0
push 0x584588
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c7c73
push 0
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
push 0
push 1
lea ecx, [ebp - 0x20b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20f0]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 1
push 0x21
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f94], eax
cmp eax, 0xffffffff
je 0x4c7c73
mov ecx, dword [ebp - 0x6f40]
push 0
push dword [ebp - 0x6cb4]
push 0
push 0
push 0
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
push 0x21
push dword [ebp - 0x6f94]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x20b4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0x592b08
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x20f0]
call fcn.00402700
push eax
push 0x5908f0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
call fcn.00409f10
test al, al
jne 0x4c7840
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f40]
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f54], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c77c2
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9daa
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c7d31
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
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 - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c7ce7
mov esi, dword [ebp - 0x6f68]
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 - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c7d98
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 - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6fc0], 0x592b20
mov dword [ebp - 0x6fbc], 0x592b60
mov dword [ebp - 0x6fb8], 0x592b80
mov dword [ebp - 0x6fb4], 0x592b9c
mov dword [ebp - 0x6fb0], 0x592bb8
mov dword [ebp - 0x6f7c], 0
jbe 0x4c83b4
mov ecx, dword [ebp - 0x6f70]
mov eax, esi
sub eax, ecx
mov dword [ebp - 0x6f40], ecx
mov dword [ebp - 0x6f48], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c83b4
xor esi, esi
mov dword [ebp - 0x6f6c], esi
nop
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c8394
mov ecx, dword [ebp - 0x6f48]
add ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp + esi*4 - 0x6fc0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c8384
lea eax, [ebp - 0x6cb4]
mov dword [ebp - 0x6f54], 0
push eax
push 0
lea ecx, [ebp - 0x1f74]
call fcn.00409e90
test al, al
je 0x4c8384
mov esi, dword [ebp - 0x6f40]
nop dword [eax]
mov ecx, dword [ebp - 0x6cb4]
call fcn.0040c5b0
test al, al
je 0x4c8356
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
lea ecx, [edi + 0x314]
push 0x5929fc
call fcn.00402700
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402310
lea ecx, [ebp - 0x20c0]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4c8356
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402310
push 0
push 1
push 1
push 0
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2380]
call fcn.00403db0
test eax, eax
jne 0x4c8356
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2380]
call fcn.004040f0
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x2374]
call fcn.00401ef0
lea eax, [ebp - 0x20b4]
mov ecx, edi
push eax
lea eax, [ebp - 0x20f0]
push eax
lea eax, [ebp - 0x2374]
push eax
call fcn.004d8070
lea ecx, [ebp - 0x20f0]
call fcn.00402a90
lea ecx, [ebp - 0x20f0]
test al, al
je 0x4c7fdb
push dword [ebp - 0x6cb4]
call fcn.00401ef0
jmp 0x4c809b
push 0
push 1
push 1
push 0
push 0x592a28
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x592a44
lea ecx, [ebp - 0x20f0]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x592bcc
lea ecx, [ebp - 0x20f0]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x592be8
lea ecx, [ebp - 0x20f0]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x592c10
lea ecx, [ebp - 0x20f0]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x592c30
lea ecx, [ebp - 0x20f0]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x592a14
lea ecx, [ebp - 0x20f0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c8356
lea ecx, [ebp - 0x20b4]
call fcn.00402a90
lea ecx, [ebp - 0x20b4]
test al, al
je 0x4c80ea
push 0x592a68
call fcn.00401ef0
jmp 0x4c810a
push 0
push 0
push 0x572c78
push 0x5735d0
call fcn.00404790
push 0
lea ecx, [ebp - 0x20b4]
call fcn.00402b90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x1f98]
push 0x572c70
call fcn.00402700
push eax
lea ecx, [ebp - 0x2148]
call fcn.00402310
push 0
lea ecx, [ebp - 0x2148]
call fcn.00402700
push eax
lea eax, [ebp - 0x20b4]
mov ecx, edi
push eax
call fcn.004dd140
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
push 0
call dword [0x5538ac]
test eax, eax
jne 0x4c8356
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x6880]
call fcn.0040d840
test al, al
je 0x4c825b
push 0x572c78
push str.CompanyName
lea ecx, [ebp - 0x6880]
call fcn.0040d5a0
push eax
lea ecx, [ebp - 0x21fc]
call fcn.00401ef0
push 0
push 1
push 1
push 0
push str.Microsoft
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x592ac4
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x592ae0
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x592c60
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
push 1
push 1
push 0
push 0x584588
lea ecx, [ebp - 0x21fc]
call fcn.00403db0
cmp eax, 1
je 0x4c8356
push 0
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
push 0
push 1
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x20f0]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 1
push 0x21
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f94], eax
cmp eax, 0xffffffff
je 0x4c8356
push 0
push dword [ebp - 0x6cb4]
mov ecx, esi
push 0
push 0
push 0
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
push 0x21
push dword [ebp - 0x6f94]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x20b4]
call fcn.00402700
push eax
push 0x592b08
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x20f0]
call fcn.00402700
push eax
push 0x5908f0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f54]
lea ecx, [ebp - 0x6cb4]
inc eax
push ecx
push eax
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f54], eax
call fcn.00409e90
test al, al
jne 0x4c7eb0
mov esi, dword [ebp - 0x6f6c]
inc esi
mov dword [ebp - 0x6f6c], esi
cmp esi, 5
jb 0x4c7e10
mov esi, dword [ebp - 0x6f7c]
add dword [ebp - 0x6f40], 0xc
inc esi
mov dword [ebp - 0x6f7c], esi
cmp esi, dword [ebp - 0x6f74]
jb 0x4c7df7
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9daa
push 0
push 0x592c80
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
lea ecx, [ebp - 0x6df8]
push 1
push 0x57e3ac
mov eax, dword [eax + 0xa8]
mov dword [ebp - 0x6e00], eax
mov dword [ebp - 0x6dfc], 0x23
call fcn.00401b70
lea ecx, [ebp - 0x1f8c]
mov byte [ebp - 4], 0x8f
call fcn.00402700
lea ecx, [edi + 0x14c]
mov dword [ebp - 0x6dec], eax
mov dword [ebp - 0x6de8], 0
call fcn.00402700
mov dword [ebp - 0x6de4], eax
lea ecx, [ebp - 0x6dd8]
lea eax, [ebp - 0x1fd4]
push 1
mov dword [ebp - 0x6de0], eax
mov eax, dword [edi + 4]
push 0x57eb90
mov dword [ebp - 0x6ddc], eax
call fcn.00401b70
push 0xc
lea ecx, [ebp - 0x2270]
mov byte [ebp - 4], 0x90
call fcn.00405e90
lea ecx, [ebp - 0x2270]
call fcn.00401aa0
xor esi, esi
mov byte [ebp - 4], 0x91
cmp dword [edi + 0x30], esi
jbe 0x4c85ce
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c85ce
push esi
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.004022a0
cmp eax, 3
jl 0x4c85c4
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24c8]
mov dword [ebp - 0x6de8], eax
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 - 0x2270]
call fcn.00402310
lea ecx, [ebp - 0x2270]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4c85c4
lea ecx, [ebp - 0x2270]
call fcn.00402700
push eax
lea eax, [ebp - 0x6e00]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c85ce
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x25e4]
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 - 0x2270]
call fcn.00402310
lea ecx, [ebp - 0x2270]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4c85c4
push 0
lea ecx, [ebp - 0x2270]
call fcn.00402950
lea ecx, [ebp - 0x2270]
call fcn.00402700
push eax
lea eax, [ebp - 0x6e00]
mov ecx, edi
push eax
call fcn.004baa50
inc esi
cmp esi, dword [edi + 0x30]
jb 0x4c8482
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9d94
lea ecx, [ebp - 0x2638]
mov dword [ebp - 0x6de8], 0x58aa90
call fcn.00402700
push eax
lea eax, [ebp - 0x6e00]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
lea ecx, [ebp - 0x2270]
test al, al
jne 0x4c9d9a
lea eax, [ebp - 0x2644]
push eax
call fcn.00401f00
push 0
lea ecx, [ebp - 0x2270]
call fcn.00402950
lea ecx, [ebp - 0x2270]
call fcn.00402700
push eax
lea eax, [ebp - 0x6e00]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9d94
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c86bd
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592cc8
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c8673
mov esi, dword [ebp - 0x6f68]
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 0x592d50
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c8724
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 0x592d50
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
mov edx, dword [ebp - 0x6f74]
test edx, edx
je 0x4c8911
mov eax, dword [ebp - 0x6f68]
mov esi, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f7c], eax
mov dword [ebp - 0x6f54], edx
nop dword [eax]
push 0
lea ecx, [esi + eax]
push 0x20019
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c88fb
lea eax, [ebp - 0x20c0]
push eax
push 0x572c78
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c88fb
push 0
push 1
push 1
push 0
push 0x592dd8
lea ecx, [ebp - 0x20c0]
call fcn.00403db0
lea ecx, [ebp - 0x20c0]
mov dword [ebp - 0x6f48], eax
call fcn.004022a0
mov edx, dword [ebp - 0x6f48]
lea ecx, [edx + 0xc]
cmp eax, ecx
jle 0x4c88fb
lea eax, [edx + 0xd]
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00403bf0
push 3
lea ecx, [ebp - 0x20c0]
call fcn.00404a70
lea ecx, [ebp - 0x20c0]
call fcn.00402a90
test al, al
jne 0x4c88fb
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x58fc04
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c88fb
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c108
push 1
push 0x23
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c88fb
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f7c]
push eax
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x23
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
push 0x592308
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
sub dword [ebp - 0x6f54], 1
jne 0x4c8750
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9d94
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c898a
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
nop dword [eax + eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592df8
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c8940
mov esi, dword [ebp - 0x6f68]
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 0x592e58
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c89f1
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 0x592e58
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
push 0
push 0x592eb8
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov esi, dword [ebp - 0x6f74]
mov dword [ebp - 0x6f54], 0
test esi, esi
je 0x4c8f00
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f7c], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c8efa
mov eax, dword [edi + 0x30]
cmp eax, 2
jbe 0x4c8a5b
add eax, 0xfffffffe
cmp dword [ebp - 0x6f54], eax
je 0x4c8ed8
mov ecx, dword [ebp - 0x6f7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
add ecx, esi
push 0x592f0c
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c8ed8
lea eax, [ebp - 0x273c]
mov dword [ebp - 0x273c], 0
push eax
push 0x5803cc
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4c8ed8
cmp dword [ebp - 0x273c], 0
je 0x4c8ed8
mov ecx, dword [ebp - 0x6f7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592f28
lea ecx, [ecx + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c8ed8
lea eax, [ebp - 0x2010]
push eax
push 0x580438
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c8cbb
lea ecx, [ebp - 0x2010]
call fcn.00402a90
test al, al
jne 0x4c8cbb
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x592f34
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c8cbb
xor esi, esi
push 0
push 1
push 1
push 0
push dword [ebp + esi*4 - 0x6fe8]
lea ecx, [ebp - 0x2010]
call fcn.00403db0
dec eax
cmp eax, 0x10
jbe 0x4c8cb5
inc esi
cmp esi, 7
jb 0x4c8ba4
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov esi, dword [ebp - 0x6f40]
mov ecx, esi
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x580438
push 1
push 0x25
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c8cbb
push 0
push 0
push 0
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
push 0
push 0x580438
mov ecx, esi
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
push 0x25
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
push 0x5928c0
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
push 0x592f58
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4c8cbb
mov esi, dword [ebp - 0x6f40]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c8efa
push 0
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 - 0x1f98]
call fcn.004040f0
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c8ed8
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409f10
test al, al
je 0x4c8ed2
nop dword [eax]
mov eax, dword [ebp - 0x6cb4]
cmp word [eax], 0
je 0x4c8eb0
push eax
lea ecx, [ebp - 0x2010]
call fcn.00401ef0
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x592f34
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c8ecc
xor eax, eax
mov dword [ebp - 0x6f4c], eax
push 0
push 1
push 1
push 0
push dword [ebp + eax*4 - 0x6fe8]
lea ecx, [ebp - 0x2010]
call fcn.00403db0
dec eax
cmp eax, 0x10
jbe 0x4c8eb0
mov eax, dword [ebp - 0x6f4c]
inc eax
mov dword [ebp - 0x6f4c], eax
cmp eax, 7
jb 0x4c8d92
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58d628
push 1
push 0x25
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c8eb0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
push 0x25
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0x5928c0
call fcn.00402700
push eax
push 0x58fcb4
push 0x592f84
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
call fcn.00409f10
test al, al
jne 0x4c8d40
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f40]
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f54], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c8a35
mov esi, dword [ebp - 0x6f74]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9d94
mov dword [ebp - 0x6f54], 0
test esi, esi
je 0x4c9359
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f48], eax
nop dword [eax + eax]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9359
mov eax, dword [edi + 0x30]
cmp eax, 2
jbe 0x4c8f66
add eax, 0xfffffffe
cmp dword [ebp - 0x6f54], eax
je 0x4c9337
mov eax, dword [ebp - 0x6f48]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
add eax, esi
push 0
push 0x592fc0
mov ecx, eax
mov dword [ebp - 0x6f7c], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c9337
lea eax, [ebp - 0x2738]
mov dword [ebp - 0x2738], 0
push eax
push 0x580848
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4c9337
cmp dword [ebp - 0x2738], 0
je 0x4c9337
mov ecx, dword [ebp - 0x6f7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592ff4
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c9337
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409e90
test al, al
je 0x4c9331
mov ecx, dword [ebp - 0x6f7c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
push 0x593010
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fe4]
call fcn.00409800
test al, al
je 0x4c930f
lea eax, [ebp - 0x2108]
push eax
push 0x578090
lea ecx, [ebp - 0x1fe4]
call fcn.004099d0
push 0
lea ecx, [ebp - 0x2108]
call fcn.00402210
cmp word [eax], 0x40
jne 0x4c913c
push 0
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
push 0x80
lea ecx, [ebp - 0x2108]
call fcn.00402cb0
push 0
push 0x80
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
call dword [0x5534f8]
lea eax, [ebp - 0x2010]
push eax
push 0x584510
lea ecx, [ebp - 0x1fe4]
call fcn.004099d0
lea ecx, [ebp - 0x2108]
call fcn.00402a90
test al, al
je 0x4c9175
lea ecx, [ebp - 0x2010]
call fcn.00402a90
test al, al
jne 0x4c930f
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x592f34
lea ecx, [ebp - 0x2010]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c932b
xor eax, eax
mov dword [ebp - 0x6f4c], eax
nop dword [eax + eax]
push 0
push 1
push 1
push 0
push dword [ebp + eax*4 - 0x6fe8]
lea ecx, [ebp - 0x2010]
call fcn.00403db0
dec eax
cmp eax, 0x10
jbe 0x4c930f
mov eax, dword [ebp - 0x6f4c]
inc eax
mov dword [ebp - 0x6f4c], eax
cmp eax, 7
jb 0x4c91b0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5924b8
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402310
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20c0]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 1
push 0x25
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f94], eax
cmp eax, 0xffffffff
je 0x4c930f
push 0
push 0
push 0
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0
push 0
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
push 0x25
push dword [ebp - 0x6f94]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2010]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0x5928c0
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2108]
call fcn.00402700
push eax
push 0x59302c
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
call fcn.00409e90
test al, al
jne 0x4c9075
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f40]
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f54], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c8f40
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c93be
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593064
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c9374
mov esi, dword [ebp - 0x6f68]
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 0x593090
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c9425
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 0x593090
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
push 0xc
lea ecx, [ebp - 0x26a4]
call fcn.00405e90
lea ecx, [ebp - 0x26a4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x25a8]
mov byte [ebp - 4], 0x92
call fcn.00405e90
lea ecx, [ebp - 0x25a8]
call fcn.00401aa0
push 0
push 0x5931d0
lea ecx, [ebp - 0x1fd4]
mov byte [ebp - 4], 0x93
call fcn.004174b0
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4c9845
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f7c], esi
mov dword [ebp - 0x6f40], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9845
mov eax, dword [edi + 0x30]
cmp eax, 2
jbe 0x4c94c6
add eax, 0xfffffffe
cmp dword [ebp - 0x6f54], eax
je 0x4c9823
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593230
lea ecx, [ecx + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c965b
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593284
push 0x58d6c8
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c965b
lea eax, [ebp - 0x26a4]
push eax
push 0x58d6e0
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
lea eax, [ebp - 0x28c8]
push eax
push 0x58d6f8
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
lea ecx, [ebp - 0x26a4]
call fcn.00402a90
test al, al
jne 0x4c965b
cmp dword [ebp - 0x28c8], 0
je 0x4c965b
push 0
push 0
push 0
push 0
push 0x5930c0
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58d6c8
push 1
push 0x24
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c965b
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
push 0x24
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push 0x5930c0
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
push 0x58d6c8
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593284
push 0x58d7b8
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c9823
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5932a8
lea ecx, [ecx + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4c9823
lea eax, [ebp - 0x25a8]
push eax
push 0x57b950
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4c9823
lea ecx, [ebp - 0x26a4]
call fcn.00402a90
test al, al
jne 0x4c9823
push 0
push 0
push 0x572c78
push 0x5736b8
lea ecx, [ebp - 0x25a8]
call fcn.00404790
push 0
push 1
push 1
push 0
push 0x57b95c
lea ecx, [ebp - 0x25a8]
call fcn.00403db0
lea ecx, [ebp - 0x25a8]
mov esi, eax
call fcn.004022a0
sub eax, 0xb
cmp esi, eax
mov esi, dword [ebp - 0x6f7c]
je 0x4c9823
push 0
push 0
push 0
push 0
push 0x593140
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58d7b8
push 1
push 0x24
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c9823
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
push 0
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
push 0x24
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push 0x593140
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
push 0x58d7b8
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], esi
mov dword [ebp - 0x6f54], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c94a0
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9d7e
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593284
push 0x58d858
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c9d7e
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c98e0
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5807b0
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c9896
mov esi, dword [ebp - 0x6f68]
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 0x5807b0
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c9947
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 0x5807b0
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6f7c], 0
jbe 0x4c9b19
mov eax, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f54], eax
nop dword [eax]
mov ecx, esi
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
je 0x4c9afd
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9b19
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58d5b8
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2120]
call fcn.00402310
lea ecx, [ebp - 0x2120]
call fcn.00402700
mov edx, 0x5803cc
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4c9a26
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5840a4
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2120]
call fcn.00402310
lea ecx, [ebp - 0x2120]
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
je 0x4c9afd
mov ecx, dword [ebp - 0x6f54]
push 0
push 0
push 0
push 0
add ecx, esi
push 0x5932f0
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58d858
push 1
push 0x24
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c9afd
mov ecx, dword [ebp - 0x6f54]
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [esi + ecx]
call fcn.00402700
push eax
push 0
mov ecx, esi
call fcn.00402700
push eax
push 0x24
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
mov ecx, dword [ebp - 0x6f54]
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push 0x5932f0
push 0x59135c
lea ecx, [esi + ecx]
call fcn.00402700
push eax
push 0x58fcb4
push 0x58d858
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4c9970
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4c9d7e
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593284
push 0x58d91c
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4c9d7e
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4c9bba
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
nop word [eax + eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593398
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4c9b70
mov esi, dword [ebp - 0x6f68]
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 0x593398
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4c9c21
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 0x593398
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
mov edx, dword [ebp - 0x6f74]
test edx, edx
je 0x4c9d64
mov eax, dword [ebp - 0x6f68]
mov esi, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f7c], eax
mov dword [ebp - 0x6f54], edx
nop dword [eax]
push 0
lea ecx, [esi + eax]
push 0x20019
call fcn.00402700
push eax
lea ecx, [ebp - 0x1fe4]
call fcn.00409800
test al, al
je 0x4c9d4e
lea ecx, [ebp - 0x1fe4]
call fcn.00409fb0
cmp eax, 1
jbe 0x4c9d4e
push 0
push 0
push 0
push 0
push 0x593400
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58d91c
push 1
push 0x24
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4c9d4e
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f7c]
push eax
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x24
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5910f0
push 0x593400
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
push 0x593470
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
sub dword [ebp - 0x6f54], 1
jne 0x4c9c50
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004378e0
mov ecx, edi
call fcn.004dcbf0
lea ecx, [ebp - 0x25a8]
call fcn.00402240
lea ecx, [ebp - 0x26a4]
call fcn.00402240
lea ecx, [ebp - 0x2270]
call fcn.00402240
lea ecx, [ebp - 0x6e00]
call fcn.004d7f70
lea ecx, [ebp - 0x6880]
call fcn.00412d30
lea ecx, [ebp - 0x20c0]
call fcn.00402240
lea ecx, [ebp - 0x2374]
call fcn.00402240
lea ecx, [ebp - 0x21fc]
call fcn.00402240
lea ecx, [ebp - 0x20f0]
call fcn.00402240
lea ecx, [ebp - 0x2380]
call fcn.00402240
lea ecx, [ebp - 0x20b4]
call fcn.00402240
lea ecx, [ebp - 0x2108]
call fcn.00402240
lea ecx, [ebp - 0x2084]
call fcn.00409840
lea ecx, [ebp - 0x1fe4]
call fcn.00409840
lea ecx, [ebp - 0x265c]
call fcn.00405b10
lea ecx, [ebp - 0x2398]
call fcn.00402240
lea ecx, [ebp - 0x2010]
mov byte [ebp - 4], 0x45
call fcn.00402240
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc766
test dword [edi + 0x34], 0x1000
jne 0x4cc766
push 0
push 0x5934c4
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x5934fc
push dword [eax + 0x38]
call fcn.00435c20
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x2d
push dword [eax + 0x34]
call fcn.00438a00
push 0xc
lea ecx, [ebp - 0x20d8]
call fcn.00405e90
lea ecx, [ebp - 0x20d8]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2034]
mov byte [ebp - 4], 0x94
call fcn.00405e90
lea ecx, [ebp - 0x2034]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x23a4]
mov byte [ebp - 4], 0x95
call fcn.00405e90
lea ecx, [ebp - 0x23a4]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x1ff0]
mov byte [ebp - 4], 0x96
call fcn.00405e90
lea ecx, [ebp - 0x1ff0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x22a0]
mov byte [ebp - 4], 0x97
call fcn.00405e90
lea ecx, [ebp - 0x22a0]
call fcn.00401aa0
mov byte [ebp - 4], 0x98
lea ecx, [ebp - 0x251c]
xor esi, esi
push 0x24
mov dword [ebp - 0x6f54], esi
call fcn.004513f0
lea ecx, [ebp - 0x251c]
call fcn.0041ae80
mov byte [ebp - 4], 0x99
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004378e0
push esi
push 0x593530
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov dword [ebp - 0x6f4c], esi
cmp dword [edi + 0x30], esi
jbe 0x4ca5d5
mov esi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f40], esi
nop
lea ecx, [ebp - 0x22a0]
call fcn.00402a90
test al, al
je 0x4c9fcc
lea eax, [ebp - 0x22a0]
push eax
push 0
lea ecx, [ebp - 0x2184]
call fcn.00402700
push dword [ebp - 0x6f4c]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.00462d50
mov esi, dword [ebp - 0x6f40]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ca5cf
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59357c
lea ecx, [ebp - 0x2184]
call fcn.00402700
push eax
push dword [ebp - 0x6f4c]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x4f38]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x4f38]
call fcn.00401350
push 3
lea ecx, [ebp - 0x20d8]
mov byte [ebp - 4], 0x9a
call fcn.00403b90
lea ecx, [ebp - 0x4f38]
call fcn.00401490
test al, al
je 0x4ca5a1
nop
push 1
lea ecx, [ebp - 0x4f38]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2034]
call fcn.00401ef0
push 0x591b5c
lea ecx, [ebp - 0x2034]
call fcn.004020e0
test al, al
je 0x4ca0be
push 0
push 1
push 1
push 0
push 0x591b6c
lea ecx, [ebp - 0x2034]
call fcn.00403db0
cmp eax, 1
jne 0x4ca58e
inc dword [ebp - 0x6f54]
lea ecx, [ebp - 0x4f38]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b80
push 1
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402310
push 0x100
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041aef0
test al, al
je 0x4ca58e
lea eax, [ebp - 0x1ff0]
push eax
push 0x5759e4
push 0x591ba8
lea ecx, [ebp - 0x251c]
call fcn.0041c080
test eax, eax
je 0x4ca316
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca316
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca316
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca316
push 0x591bf8
lea ecx, [ebp - 0x1ff0]
call fcn.00401fb0
test al, al
jne 0x4ca316
push 0
push 1
push 1
push 0
push 0x591c10
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca316
lea ecx, [edi + 0x14c]
push eax
call fcn.00402700
push eax
push 0x5935b8
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4ca316
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5935e4
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4ca316
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x591c80
push 2
push 0x2a
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4ca316
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0x591ba8
push 0x2a
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
push 0x591cc8
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x2a7c]
mov dword [ebp - 0x6edc], 0
push eax
push 0x5759e4
xorps xmm0, xmm0
lea ecx, [ebp - 0x251c]
push 0x591ce8
movups xmmword [ebp - 0x6eec], xmm0
call fcn.0041bce0
test al, al
je 0x4ca58e
lea eax, [ebp - 0x2a7c]
push eax
lea eax, [ebp - 0x6eec]
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041cd40
test al, al
je 0x4ca58e
nop
lea eax, [ebp - 0x1ff0]
push eax
lea eax, [ebp - 0x6eec]
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041ca50
test eax, eax
je 0x4ca56d
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca56d
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca56d
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca56d
push 0x591bf8
lea ecx, [ebp - 0x1ff0]
call fcn.00401fb0
test al, al
jne 0x4ca56d
push 0
push 1
push 1
push 0
push 0x591c10
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca56d
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5935b8
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4ca567
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5935e4
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4ca567
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
mov esi, dword [ebp - 0x6f40]
mov ecx, esi
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x591d80
push 2
push 0x2a
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4ca56d
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0x591ce8
push 0x2a
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
push 0x591d9c
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4ca56d
mov esi, dword [ebp - 0x6f40]
lea eax, [ebp - 0x2a7c]
push eax
lea eax, [ebp - 0x6eec]
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041cd40
test al, al
jne 0x4ca370
lea ecx, [ebp - 0x4f38]
call fcn.00401450
test al, al
jne 0x4ca070
lea ecx, [ebp - 0x4f38]
mov byte [ebp - 4], 0x99
call fcn.004013a0
mov eax, dword [ebp - 0x6f4c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f4c], eax
cmp eax, dword [edi + 0x30]
jb 0x4c9f80
mov esi, dword [ebp - 0x6f54]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc720
test esi, esi
jne 0x4ca60d
lea ecx, [ebp - 0x22a0]
call fcn.00402a90
test al, al
je 0x4ca60d
push esi
push 0x593610
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
jmp 0x4cc720
push 0
push 0x593668
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4ca9d5
mov esi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f40], esi
nop
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ca9d5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59357c
lea ecx, [ebp - 0x2184]
call fcn.00402700
push eax
push dword [ebp - 0x6f54]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x5658]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x5658]
call fcn.00401350
push 3
lea ecx, [ebp - 0x20d8]
mov byte [ebp - 4], 0x9b
call fcn.00403b90
lea ecx, [ebp - 0x5658]
call fcn.00401490
test al, al
je 0x4ca9a7
push 1
lea ecx, [ebp - 0x5658]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2034]
call fcn.00401ef0
push 0x591b5c
lea ecx, [ebp - 0x2034]
call fcn.004020e0
test al, al
je 0x4ca731
push 0
push 1
push 1
push 0
push 0x591b6c
lea ecx, [ebp - 0x2034]
call fcn.00403db0
cmp eax, 1
jne 0x4ca994
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b80
push 1
lea ecx, [ebp - 0x5658]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402310
push 0x100
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041aef0
test al, al
je 0x4ca994
lea eax, [ebp - 0x1ff0]
push eax
push 0x5759e4
push 0x591e58
lea ecx, [ebp - 0x251c]
call fcn.0041c080
test eax, eax
je 0x4ca994
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca994
push eax
push 1
push 1
push eax
push 0x591d14
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca994
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca994
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca994
push eax
push 1
push 1
push eax
push 0x591d38
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4ca994
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5936a8
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4ca98e
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5936d8
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4ca98e
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x591f08
push 2
push 0x2b
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4ca98e
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0x591f38
push 0x2b
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2034]
call fcn.00402700
mov esi, dword [ebp - 0x6f40]
mov ecx, esi
push eax
push 0x59135c
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
push 0x591f98
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4ca994
mov esi, dword [ebp - 0x6f40]
lea ecx, [ebp - 0x5658]
call fcn.00401450
test al, al
jne 0x4ca6e3
lea ecx, [ebp - 0x5658]
mov byte [ebp - 4], 0x99
call fcn.004013a0
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f54], eax
cmp eax, dword [edi + 0x30]
jb 0x4ca640
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc720
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593708
lea ecx, [edi + 0x314]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x593744
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4cb001
mov esi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f40], esi
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cb001
push 0xc
lea ecx, [ebp - 0x2704]
call fcn.00405e90
lea ecx, [ebp - 0x2704]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2760]
mov byte [ebp - 4], 0x9c
call fcn.00405e90
lea ecx, [ebp - 0x2760]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2748]
mov byte [ebp - 4], 0x9d
call fcn.00405e90
lea ecx, [ebp - 0x2748]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2668]
mov byte [ebp - 4], 0x9e
call fcn.00405e90
lea ecx, [ebp - 0x2668]
call fcn.00401aa0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59357c
lea ecx, [ebp - 0x2184]
mov byte [ebp - 4], 0x9f
call fcn.00402700
push eax
push dword [ebp - 0x6f54]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x3e98]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x3e98]
call fcn.00401350
push 3
lea ecx, [ebp - 0x20d8]
mov byte [ebp - 4], 0xa0
call fcn.00403b90
lea ecx, [ebp - 0x3e98]
call fcn.00401490
test al, al
je 0x4cafa7
nop dword [eax]
push 1
lea ecx, [ebp - 0x3e98]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2034]
call fcn.00401ef0
push 0x591b5c
lea ecx, [ebp - 0x2034]
call fcn.004020e0
test al, al
je 0x4cabae
push 0
push 1
push 1
push 0
push 0x591b6c
lea ecx, [ebp - 0x2034]
call fcn.00403db0
cmp eax, 1
jne 0x4caf94
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b80
push 1
lea ecx, [ebp - 0x3e98]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402310
push 0x100
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041aef0
test al, al
je 0x4caf94
lea eax, [ebp - 0x2a90]
mov dword [ebp - 0x6ef0], 0
push eax
push 0x5759e4
xorps xmm0, xmm0
lea ecx, [ebp - 0x251c]
push 0x592060
movups xmmword [ebp - 0x6f00], xmm0
call fcn.0041bce0
test al, al
je 0x4caf94
lea eax, [ebp - 0x2a90]
push eax
lea eax, [ebp - 0x6f00]
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041c670
test al, al
je 0x4caf94
nop word [eax + eax]
lea eax, [ebp - 0x2704]
push eax
lea eax, [ebp - 0x6f00]
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041beb0
test al, al
je 0x4caf73
lea ecx, [ebp - 0x2704]
call fcn.00402700
lea ecx, [ebp - 0x1f98]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4caf6d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59208c
lea ecx, [ebp - 0x2704]
call fcn.00402700
push eax
push 0x5920b0
lea ecx, [ebp - 0x2748]
call fcn.00402310
lea eax, [ebp - 0x2760]
push eax
push 0x5759e4
lea ecx, [ebp - 0x2748]
call fcn.00402700
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041c080
test eax, eax
je 0x4caf6d
lea ecx, [ebp - 0x2760]
call fcn.00402700
lea ecx, [ebp - 0x1f98]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4caf6d
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593774
lea ecx, [ebp - 0x2760]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4caf6d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5920e0
lea ecx, [ebp - 0x2704]
call fcn.00402700
push eax
push 0x5920b0
lea ecx, [ebp - 0x2748]
call fcn.00402310
lea eax, [ebp - 0x2668]
push eax
push 0x5759e4
lea ecx, [ebp - 0x2748]
call fcn.00402700
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041c080
test eax, eax
je 0x4cae18
push 0
push 1
push 1
push 5
push 0x5736bc
lea ecx, [ebp - 0x2668]
call fcn.00403db0
test eax, eax
jne 0x4cae18
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push 0x5920f0
push 1
lea ecx, [ebp - 0x3e98]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2668]
call fcn.004044a0
lea ecx, [ebp - 0x2668]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4caf6d
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2704]
call fcn.00402700
push eax
push 0x5920b0
lea ecx, [ebp - 0x2748]
call fcn.00402310
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2668]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x2760]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 2
push 0x2c
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4caf6d
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2668]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2748]
call fcn.00402700
push eax
push 0x2c
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2668]
call fcn.00402700
mov esi, dword [ebp - 0x6f40]
mov ecx, esi
push eax
push 0x590940
call fcn.00402700
push eax
push 0x59210c
lea ecx, [ebp - 0x2704]
call fcn.00402700
push eax
push 0x577c70
lea ecx, [ebp - 0x2760]
call fcn.00402700
push eax
push 0x592130
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4caf73
mov esi, dword [ebp - 0x6f40]
lea eax, [ebp - 0x2a90]
push eax
lea eax, [ebp - 0x6f00]
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041c670
test al, al
jne 0x4cac70
lea ecx, [ebp - 0x3e98]
call fcn.00401450
test al, al
jne 0x4cab60
lea ecx, [ebp - 0x3e98]
call fcn.004013a0
lea ecx, [ebp - 0x2668]
call fcn.00402240
lea ecx, [ebp - 0x2748]
call fcn.00402240
lea ecx, [ebp - 0x2760]
call fcn.00402240
lea ecx, [ebp - 0x2704]
mov byte [ebp - 4], 0x99
call fcn.00402240
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f54], eax
cmp eax, dword [edi + 0x30]
jb 0x4caa46
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc720
push 0
push 0x593798
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
lea ecx, [ebp - 0x6d68]
push 1
push 0
mov eax, dword [eax + 0xa8]
mov dword [ebp - 0x6d70], eax
mov dword [ebp - 0x6d6c], 0x2d
call fcn.00401b70
lea ecx, [ebp - 0x1f8c]
mov byte [ebp - 4], 0xa1
call fcn.00402700
lea ecx, [edi + 0x14c]
mov dword [ebp - 0x6d5c], eax
mov dword [ebp - 0x6d58], 0
call fcn.00402700
mov dword [ebp - 0x6d54], eax
lea ecx, [ebp - 0x6d48]
lea eax, [ebp - 0x1fd4]
push 1
mov dword [ebp - 0x6d50], eax
mov eax, dword [edi + 4]
push 0x57b900
mov dword [ebp - 0x6d4c], eax
call fcn.00401b70
push 0xc
lea ecx, [ebp - 0x2258]
mov byte [ebp - 4], 0xa2
call fcn.00405e90
lea ecx, [ebp - 0x2258]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2240]
mov byte [ebp - 4], 0xa3
call fcn.00405e90
lea ecx, [ebp - 0x2240]
call fcn.00401aa0
mov ecx, edi
mov byte [ebp - 4], 0xa4
call fcn.004e8ef0
test al, al
jne 0x4cc6ff
xor esi, esi
mov dword [ebp - 0x6f40], esi
cmp dword [edi + 0x30], esi
jbe 0x4cb297
nop dword [eax]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cb297
push esi
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.004022a0
cmp eax, 3
jl 0x4cb287
lea eax, [ebp - 0x6d68]
push eax
push 0
lea ecx, [ebp - 0x2184]
call fcn.00402700
push dword [ebp - 0x6f40]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.00462d50
mov esi, dword [ebp - 0x6f40]
test al, al
je 0x4cb287
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24c8]
mov dword [ebp - 0x6d58], eax
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 - 0x2258]
call fcn.00402310
lea ecx, [ebp - 0x2258]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4cb287
lea ecx, [ebp - 0x2258]
call fcn.00402700
push eax
lea eax, [ebp - 0x6d70]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cb297
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x25e4]
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 - 0x2258]
call fcn.00402310
lea ecx, [ebp - 0x2258]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4cb287
push 0
lea ecx, [ebp - 0x2258]
call fcn.00402950
lea ecx, [ebp - 0x2258]
call fcn.00402700
push eax
lea eax, [ebp - 0x6d70]
mov ecx, edi
push eax
call fcn.004baa50
inc esi
mov dword [ebp - 0x6f40], esi
cmp esi, dword [edi + 0x30]
jb 0x4cb100
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6ff
lea ecx, [ebp - 0x2638]
mov dword [ebp - 0x6d58], 0x58aa90
call fcn.00402700
push eax
lea eax, [ebp - 0x6d70]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6ff
lea eax, [ebp - 0x2644]
push eax
lea ecx, [ebp - 0x2258]
call fcn.00401f00
push 0
lea ecx, [ebp - 0x2258]
call fcn.00402950
lea ecx, [ebp - 0x2258]
call fcn.00402700
push eax
lea eax, [ebp - 0x6d70]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6ff
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4cb38a
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
nop dword [eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5937e8
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4cb340
mov esi, dword [ebp - 0x6f68]
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 0x593878
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4cb3f1
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 0x593878
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4cb5fc
mov eax, dword [ebp - 0x6f68]
mov esi, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f7c], eax
nop dword [eax]
push 0
push 0x20019
lea ecx, [eax + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4cb5da
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cb5fc
lea eax, [ebp - 0x2240]
push eax
push 0x572c78
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4cb5da
push 0
push 1
push 1
push 0
push 0x593904
lea ecx, [ebp - 0x2240]
call fcn.00403db0
lea ecx, [ebp - 0x2240]
mov dword [ebp - 0x6f48], eax
call fcn.004022a0
mov edx, dword [ebp - 0x6f48]
lea ecx, [edx + 0xa]
cmp eax, ecx
jle 0x4cb5da
lea eax, [edx + 0xb]
push eax
lea ecx, [ebp - 0x2240]
call fcn.00403bf0
push 3
lea ecx, [ebp - 0x2240]
call fcn.00404a70
lea ecx, [ebp - 0x2240]
call fcn.00402a90
test al, al
jne 0x4cb5da
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x58fafc
lea ecx, [ebp - 0x2240]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cb5da
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2240]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c108
push 2
push 0x2d
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4cb5da
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f7c]
push eax
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x2d
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2240]
call fcn.00402700
push eax
push 0x592308
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
cmp eax, dword [ebp - 0x6f74]
mov dword [ebp - 0x6f54], eax
mov eax, dword [ebp - 0x6f7c]
jb 0x4cb420
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6ff
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4cb670
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593920
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4cb626
mov esi, dword [ebp - 0x6f68]
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 0x593968
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4cb6d7
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 0x593968
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
push 0
push 0x5939ac
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov esi, dword [ebp - 0x6f74]
mov dword [ebp - 0x6f7c], 0
test esi, esi
je 0x4cb934
mov eax, dword [ebp - 0x6f68]
mov esi, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f54], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cb92e
mov ecx, dword [ebp - 0x6f54]
push 0
push 0x20019
lea ecx, [ecx + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
lea eax, [ebp - 0x1ff0]
push eax
push 0x58c2bc
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4cb912
lea eax, [ebp - 0x2188]
mov dword [ebp - 0x2188], 0
push eax
push 0x58c35c
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4cb796
cmp dword [ebp - 0x2188], 0
jne 0x4cb912
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4cb912
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4cb912
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4cb912
push eax
push 1
push 1
push eax
push 0x591c10
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4cb912
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5939e8
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cb912
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c2bc
push 2
push 0x2f
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4cb912
push 0
push 0
push 0
push 0
push 0
push 0x58c2bc
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x2f
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
push 0x593a18
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4cb715
mov esi, dword [ebp - 0x6f74]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6ff
push 0xc
lea ecx, [ebp - 0x2674]
call fcn.00405e90
lea ecx, [ebp - 0x2674]
call fcn.00401aa0
mov byte [ebp - 4], 0xa5
mov dword [ebp - 0x6f7c], 0
test esi, esi
je 0x4cbc0d
mov eax, dword [ebp - 0x6f68]
mov esi, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f54], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cbc07
mov ecx, dword [ebp - 0x6f54]
push 0
push 0x20019
lea ecx, [ecx + esi]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
lea eax, [ebp - 0x1ff0]
push eax
push 0x58c3fc
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4cbbeb
lea eax, [ebp - 0x2188]
mov dword [ebp - 0x2188], 0
push eax
push 0x58c4fc
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4cba06
cmp dword [ebp - 0x2188], 0
je 0x4cbbeb
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4cbbeb
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4cbbeb
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4cbbeb
push eax
push 1
push 1
push eax
push 0x591c10
lea ecx, [ebp - 0x1ff0]
call fcn.00403db0
test eax, eax
jne 0x4cbbeb
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x5939e8
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cbbeb
lea eax, [ebp - 0x2674]
push eax
push 0x58c4c8
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4cbbeb
lea ecx, [ebp - 0x2674]
call fcn.00402a90
test al, al
jne 0x4cbbeb
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x5924b8
lea ecx, [ebp - 0x2674]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2240]
call fcn.00402310
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2240]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 2
push 0x2f
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4cbbeb
push 0
push 0
push 0
push 0
push 0
push 0x58c3fc
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0
lea ecx, [ecx + esi]
call fcn.00402700
push eax
push 0x2f
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
push 0x593a68
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4cb985
mov esi, dword [ebp - 0x6f74]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6f4
mov dword [ebp - 0x6f7c], 0
test esi, esi
je 0x4cbe9c
mov esi, dword [ebp - 0x6f70]
mov eax, dword [ebp - 0x6f68]
sub eax, esi
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f48], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cbe9c
mov eax, dword [ebp - 0x6f48]
add eax, esi
push 0
push 0x20019
mov ecx, eax
mov dword [ebp - 0x6f54], eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4cbe7a
lea eax, [ebp - 0x2188]
mov dword [ebp - 0x2188], 0
push eax
push 0x592540
lea ecx, [ebp - 0x1f74]
call fcn.00409bc0
test al, al
je 0x4cbe7a
cmp dword [ebp - 0x2188], 4
jne 0x4cbe7a
mov ecx, dword [ebp - 0x6f54]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x592564
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
push 0
push 0x20019
lea ecx, [ebp - 0x1f98]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f74]
call fcn.00409800
test al, al
je 0x4cbe7a
lea eax, [ebp - 0x6cb4]
xor esi, esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
mov dword [ebp - 0x6f6c], esi
call fcn.00409f10
test al, al
je 0x4cbe74
nop word [eax + eax]
lea eax, [ebp - 0x1ff0]
push eax
push dword [ebp - 0x6cb4]
lea ecx, [ebp - 0x1f74]
call fcn.004099d0
test al, al
je 0x4cbe52
lea ecx, [ebp - 0x1ff0]
call fcn.00402a90
test al, al
jne 0x4cbe52
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c6b8
push 2
push 0x2f
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f94], eax
cmp eax, 0xffffffff
je 0x4cbe52
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x6cb4]
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0
call fcn.00402700
push eax
push 0x2f
push dword [ebp - 0x6f94]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x1ff0]
call fcn.00402700
push eax
push 0x593ac8
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea eax, [ebp - 0x6cb4]
inc esi
push eax
push esi
lea ecx, [ebp - 0x1f74]
call fcn.00409f10
test al, al
jne 0x4cbd40
mov dword [ebp - 0x6f6c], esi
mov esi, dword [ebp - 0x6f40]
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f40], esi
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4cbc48
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6f4
push 0
push 0x593b10
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x6f54], 0
jbe 0x4cc2ad
mov esi, dword [ebp - 0x6f70]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc2ad
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59357c
lea ecx, [ebp - 0x2184]
call fcn.00402700
push eax
push dword [ebp - 0x6f54]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x39d8]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x39d8]
call fcn.00401350
push 3
lea ecx, [ebp - 0x20d8]
mov byte [ebp - 4], 0xa6
call fcn.00403b90
lea ecx, [ebp - 0x39d8]
call fcn.00401490
test al, al
je 0x4cc285
nop word [eax + eax]
push 1
lea ecx, [ebp - 0x39d8]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2034]
call fcn.00401ef0
push 0x591b5c
lea ecx, [ebp - 0x2034]
call fcn.004020e0
test al, al
je 0x4cbfce
push 0
push 1
push 1
push 0
push 0x591b6c
lea ecx, [ebp - 0x2034]
call fcn.00403db0
cmp eax, 1
jne 0x4cc272
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591b80
push 1
lea ecx, [ebp - 0x39d8]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402310
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4cc120
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593b48
push 0x58c7bc
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cc120
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c7bc
push 2
push 0x2e
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4cc272
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0
push 0x2e
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x592610
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
push 0x58c7bc
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593b48
push 0x58c8b8
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cc272
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x59266c
push 1
lea ecx, [ebp - 0x39d8]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x20d8]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402310
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4cc272
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
mov ecx, esi
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58c8b8
push 2
push 0x2e
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4cc272
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0
push 0x2e
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x592610
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0x59135c
mov ecx, esi
call fcn.00402700
push eax
push 0x58fcb4
push 0x58c8b8
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea ecx, [ebp - 0x39d8]
call fcn.00401450
test al, al
jne 0x4cbf80
lea ecx, [ebp - 0x39d8]
mov byte [ebp - 4], 0xa5
call fcn.004013a0
mov eax, dword [ebp - 0x6f54]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f54], eax
cmp eax, dword [edi + 0x30]
jb 0x4cbed7
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6f4
lea eax, [ebp - 0x22a0]
push eax
lea ecx, [ebp - 0x2034]
call fcn.00401f00
push 1
lea ecx, [ebp - 0x2034]
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 0x592688
lea ecx, [ebp - 0x2034]
call fcn.004040f0
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4cc4a4
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593b48
push 0x58c988
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cc4a4
push 0
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
lea ecx, [ebp - 0x251c]
call fcn.0041aef0
test al, al
je 0x4cc4a4
lea eax, [ebp - 0x2a08]
push eax
push 0x5759e4
push 0x591ba8
lea ecx, [ebp - 0x251c]
call fcn.0041bce0
test al, al
jne 0x4cc3e7
lea eax, [ebp - 0x2a08]
push eax
push 0x5759e4
push 0x591ce8
lea ecx, [ebp - 0x251c]
call fcn.0041bce0
test al, al
jne 0x4cc3e7
lea eax, [ebp - 0x2a08]
push eax
push 0x5759e4
push 0x58bf40
lea ecx, [ebp - 0x251c]
call fcn.0041bce0
test al, al
jne 0x4cc3e7
lea eax, [ebp - 0x2a08]
push eax
push 0x5759e4
push 0x592060
lea ecx, [ebp - 0x251c]
call fcn.0041bce0
test al, al
je 0x4cc4a4
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58aa90
push 0x58c988
push 2
push 0x2e
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4cc4a4
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58aa90
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0
push 0x2e
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2034]
call fcn.00402700
push eax
push 0x59135c
push 0x5909e4
push 0x5926b0
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593b48
push 0x58e260
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cc6f4
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4cc530
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x6f54], eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593920
push esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push str.HKU_
call fcn.00402310
add dword [ebp - 0x6f54], 0xc
lea ecx, [edi + 0x104]
mov eax, dword [edi + 0x30]
inc esi
cmp esi, eax
jb 0x4cc4e6
mov esi, dword [ebp - 0x6f68]
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 0x593920
push dword [ebp - 0x6f8c]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6fa8], 0
je 0x4cc597
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 0x593920
push dword [ebp - 0x6fa4]
lea eax, [eax + eax*2]
lea ecx, [esi + eax*4]
call fcn.00402310
cmp dword [ebp - 0x6f74], 0
mov dword [ebp - 0x6f7c], 0
jbe 0x4cc6e1
mov eax, dword [ebp - 0x6f70]
sub eax, esi
mov dword [ebp - 0x6f54], eax
nop dword [eax]
mov ecx, esi
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.0040cf50
test al, al
je 0x4cc6c5
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cc6e1
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
lea ecx, [esi + ecx]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58e260
push 2
push 0x2e
push dword [eax + 0xa8]
call fcn.004adef0
mov dword [ebp - 0x6f48], eax
cmp eax, 0xffffffff
je 0x4cc6c5
mov ecx, dword [ebp - 0x6f54]
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [esi + ecx]
call fcn.00402700
push eax
push 0
mov ecx, esi
call fcn.00402700
push eax
push 0x2e
push dword [ebp - 0x6f48]
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x592610
mov ecx, esi
call fcn.00402700
mov ecx, dword [ebp - 0x6f54]
push eax
push 0x59135c
lea ecx, [esi + ecx]
call fcn.00402700
push eax
push 0x58fcb4
push 0x58e260
push 0x592648
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [ebp - 0x6f74]
jb 0x4cc5c0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004378e0
lea ecx, [ebp - 0x2674]
call fcn.00402240
lea ecx, [ebp - 0x2240]
call fcn.00402240
lea ecx, [ebp - 0x2258]
call fcn.00402240
lea ecx, [ebp - 0x6d70]
call fcn.004d7f70
lea ecx, [ebp - 0x251c]
call fcn.00426960
lea ecx, [ebp - 0x22a0]
call fcn.00402240
lea ecx, [ebp - 0x1ff0]
call fcn.00402240
lea ecx, [ebp - 0x23a4]
call fcn.00402240
lea ecx, [ebp - 0x2034]
call fcn.00402240
lea ecx, [ebp - 0x20d8]
mov byte [ebp - 4], 0x45
call fcn.00402240
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ce9bc
test dword [edi + 0x34], 0x1000
jne 0x4ce9bc
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0
push 0x593b74
push dword [eax + 0x38]
call fcn.00435c20
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 0x2f
push dword [eax + 0x34]
call fcn.00438a00
push 0xc
lea ecx, [ebp - 0x216c]
call fcn.00405e90
lea ecx, [ebp - 0x216c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x204c]
mov byte [ebp - 4], 0xa7
call fcn.00405e90
lea ecx, [ebp - 0x204c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x24b0]
mov byte [ebp - 4], 0xa8
call fcn.00405e90
lea ecx, [ebp - 0x24b0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2160]
mov byte [ebp - 4], 0xa9
call fcn.00405e90
lea ecx, [ebp - 0x2160]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x232c]
mov byte [ebp - 4], 0xaa
call fcn.00405e90
lea ecx, [ebp - 0x232c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x227c]
mov byte [ebp - 4], 0xab
call fcn.00405e90
lea ecx, [ebp - 0x227c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2308]
mov byte [ebp - 4], 0xac
call fcn.00405e90
lea ecx, [ebp - 0x2308]
call fcn.00401aa0
mov byte [ebp - 4], 0xad
lea ecx, [ebp - 0x2884]
xor esi, esi
push 0x20
mov dword [ebp - 0x6f7c], esi
call fcn.0041aab0
lea ecx, [ebp - 0x2884]
call fcn.004164e0
mov byte [ebp - 4], 0xae
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push 1
push dword [eax + 0xa8]
call fcn.004378e0
push esi
push 0x593ba0
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov dword [ebp - 0x6f4c], esi
cmp dword [edi + 0x30], esi
jbe 0x4cccb9
mov eax, dword [ebp - 0x6f70]
lea esi, [edi + 0x10c]
mov dword [ebp - 0x6f40], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cccb3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58116c
lea ecx, [ebp - 0x2220]
call fcn.00402700
push eax
push dword [ebp - 0x6f4c]
mov ecx, esi
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x232c]
call fcn.00402310
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x581190
lea ecx, [ebp - 0x232c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x227c]
call fcn.00402310
lea ecx, [ebp - 0x227c]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4ccc96
lea ecx, [ebp - 0x2308]
call fcn.00402a90
test al, al
je 0x4cc9b4
lea eax, [ebp - 0x2308]
push eax
lea ecx, [ebp - 0x2220]
call fcn.00402700
push dword [ebp - 0x6f4c]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.00463360
lea eax, [ebp - 0x216c]
xor esi, esi
push eax
lea ecx, [ebp - 0x227c]
mov dword [ebp - 0x6f54], esi
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.00463940
test al, al
je 0x4ccc90
nop
lea ecx, [ebp - 0x216c]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4ccc66
inc dword [ebp - 0x6f7c]
lea ecx, [ebp - 0x2418]
push 0xc
call fcn.00405e90
lea ecx, [ebp - 0x2418]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x25f0]
mov byte [ebp - 4], 0xaf
call fcn.00405e90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x581158
lea ecx, [ebp - 0x216c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x25f0]
call fcn.00401c10
lea eax, [ebp - 0x2418]
mov byte [ebp - 4], 0xb0
push eax
lea ecx, [ebp - 0x25f0]
call fcn.00402700
mov edx, 0x58e34c
mov ecx, eax
call fcn.00463e80
test al, al
je 0x4ccc4c
push 0
push 1
push 1
push 0
push 0x591bbc
lea ecx, [ebp - 0x2418]
call fcn.00403db0
test eax, eax
jne 0x4ccc4c
push eax
push 1
push 1
push eax
push 0x591bdc
lea ecx, [ebp - 0x2418]
call fcn.00403db0
test eax, eax
jne 0x4ccc4c
push eax
push 1
push 1
push eax
push 0x591c2c
lea ecx, [ebp - 0x2418]
call fcn.00403db0
test eax, eax
jne 0x4ccc4c
push eax
push 1
push 1
push eax
push 0x591c10
lea ecx, [ebp - 0x2418]
call fcn.00403db0
test eax, eax
jne 0x4ccc4c
push eax
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593c14
lea ecx, [ebp - 0x2418]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4ccc4c
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2418]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58e328
push 3
push 0x33
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
jne 0x4ccb8f
lea ecx, [ebp - 0x25f0]
call fcn.00402240
lea ecx, [ebp - 0x2418]
mov byte [ebp - 4], 0xae
call fcn.00402240
mov esi, dword [ebp - 0x6f54]
jmp 0x4ccc66
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x25f0]
call fcn.00402700
push eax
push 0
push 0x33
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x25f0]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0x590940
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2418]
call fcn.00402700
push eax
push 0x593c40
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea ecx, [ebp - 0x25f0]
call fcn.00402240
lea ecx, [ebp - 0x2418]
mov byte [ebp - 4], 0xae
call fcn.00402240
mov esi, dword [ebp - 0x6f54]
jmp 0x4ccc66
lea ecx, [ebp - 0x25f0]
call fcn.00402240
lea ecx, [ebp - 0x2418]
mov byte [ebp - 4], 0xae
call fcn.00402240
lea eax, [ebp - 0x216c]
inc esi
push eax
lea ecx, [ebp - 0x227c]
mov dword [ebp - 0x6f54], esi
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.00463940
test al, al
jne 0x4cc9e0
lea esi, [edi + 0x10c]
mov eax, dword [ebp - 0x6f4c]
add dword [ebp - 0x6f40], 0xc
inc eax
mov dword [ebp - 0x6f4c], eax
cmp eax, dword [edi + 0x30]
jb 0x4cc8d4
mov esi, dword [ebp - 0x6f7c]
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ce960
test esi, esi
jne 0x4cccf1
lea ecx, [ebp - 0x2308]
call fcn.00402a90
test al, al
je 0x4cccf1
push esi
push 0x593c70
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
jmp 0x4ce960
push fcn.00402240
push fcn.00401aa0
push 2
push 0xc
lea eax, [ebp - 0x2c]
push eax
call fcn.005365d1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593cc8
lea ecx, [ebp - 0x26d4]
mov byte [ebp - 4], 0xb1
call fcn.00402700
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402310
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593cc8
lea ecx, [ebp - 0x26e0]
call fcn.00402700
push eax
lea ecx, [ebp - 0x20]
call fcn.00402310
push 0xc
lea ecx, [ebp - 0x24ec]
call fcn.00405e90
push 1
push 0x593d18
lea ecx, [ebp - 0x24ec]
call fcn.00401b70
push 0
push 0x593de0
lea ecx, [ebp - 0x1fd4]
mov byte [ebp - 4], 0xb2
call fcn.004174b0
xor esi, esi
mov dword [ebp - 0x6f7c], esi
cmp dword [edi + 0x30], esi
jbe 0x4cd12e
mov eax, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f40], eax
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cd12e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58116c
lea ecx, [ebp - 0x2220]
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 - 0x232c]
call fcn.00402310
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x581190
lea ecx, [ebp - 0x232c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x227c]
call fcn.00402310
lea ecx, [ebp - 0x227c]
call fcn.00402700
push eax
call dword [0x5534e8]
test eax, eax
je 0x4cd117
lea eax, [ebp - 0x216c]
xor esi, esi
push eax
lea ecx, [ebp - 0x227c]
mov dword [ebp - 0x6f54], esi
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.00463940
test al, al
je 0x4cd111
nop
lea ecx, [ebp - 0x216c]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4cd0e7
push 0xc
lea ecx, [ebp - 0x243c]
call fcn.00405e90
lea ecx, [ebp - 0x243c]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x25fc]
mov byte [ebp - 4], 0xb3
call fcn.00405e90
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x581158
lea ecx, [ebp - 0x216c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x25fc]
call fcn.00401c10
lea eax, [ebp - 0x243c]
mov byte [ebp - 4], 0xb4
push eax
lea ecx, [ebp - 0x25fc]
call fcn.00402700
mov edx, 0x58e468
mov ecx, eax
call fcn.00463e80
test al, al
je 0x4cd0cd
push 0x584588
lea ecx, [ebp - 0x243c]
call fcn.00401fb0
test al, al
jne 0x4cd0cd
push 0x5844ec
lea ecx, [ebp - 0x243c]
call fcn.00401fb0
test al, al
jne 0x4cd0cd
push 0x584954
lea ecx, [ebp - 0x243c]
call fcn.00401fb0
test al, al
jne 0x4cd0cd
push 0x593e1c
lea ecx, [ebp - 0x243c]
call fcn.00401fb0
test al, al
jne 0x4cd0cd
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593e34
lea ecx, [ebp - 0x243c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cd0cd
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x243c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 0x58e428
push 3
push 0x34
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
jne 0x4cd010
lea ecx, [ebp - 0x25fc]
call fcn.00402240
lea ecx, [ebp - 0x243c]
mov byte [ebp - 4], 0xb2
call fcn.00402240
mov esi, dword [ebp - 0x6f54]
jmp 0x4cd0e7
mov ecx, dword [ebp - 0x6f40]
push 0
push 0
push 0
push 0
push 0
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x25fc]
call fcn.00402700
push eax
push 0
push 0x34
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x25fc]
call fcn.00402700
mov ecx, dword [ebp - 0x6f40]
push eax
push 0x590940
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x243c]
call fcn.00402700
push eax
push 0x593e68
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea ecx, [ebp - 0x25fc]
call fcn.00402240
lea ecx, [ebp - 0x243c]
mov byte [ebp - 4], 0xb2
call fcn.00402240
mov esi, dword [ebp - 0x6f54]
jmp 0x4cd0e7
lea ecx, [ebp - 0x25fc]
call fcn.00402240
lea ecx, [ebp - 0x243c]
mov byte [ebp - 4], 0xb2
call fcn.00402240
lea eax, [ebp - 0x216c]
inc esi
push eax
lea ecx, [ebp - 0x227c]
mov dword [ebp - 0x6f54], esi
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.00463940
test al, al
jne 0x4cce80
mov esi, dword [ebp - 0x6f7c]
add dword [ebp - 0x6f40], 0xc
inc esi
mov dword [ebp - 0x6f7c], esi
cmp esi, dword [edi + 0x30]
jb 0x4ccdb8
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ce93f
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x6f7c], 0
mov dword [ebp - 0x6f54], esi
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cd49c
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593e94
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x204c]
call fcn.00402310
push 0x260
lea ecx, [ebp - 0x4a78]
call fcn.0040e0b0
push 1
lea ecx, [ebp - 0x204c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x4a78]
call fcn.00401350
push 1
lea ecx, [ebp - 0x204c]
mov byte [ebp - 4], 0xb5
call fcn.00402700
push eax
lea ecx, [ebp - 0x4a78]
call fcn.004014a0
test al, al
je 0x4cd46e
nop dword [eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x572d68
push 1
lea ecx, [ebp - 0x4a78]
call fcn.004014f0
push eax
push 0x572d68
lea ecx, [ebp - 0x2160]
call fcn.00402310
push 0
push 1
push 1
push 0
lea ecx, [ebp - 0x2160]
call fcn.00402700
push eax
lea ecx, [ebp - 0x24ec]
call fcn.00403db0
test eax, eax
jne 0x4cd455
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push 1
lea ecx, [ebp - 0x4a78]
call fcn.004014f0
push eax
push 0x572c70
mov ecx, esi
call fcn.00402700
push eax
lea ecx, [ebp - 0x204c]
call fcn.00402310
lea ecx, [ebp - 0x2160]
call fcn.00402250
push 0
push 0x80
lea ecx, [ebp - 0x204c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2884]
call fcn.00416630
test eax, eax
je 0x4cd312
push 0
lea eax, [ebp - 0x2160]
push eax
lea ecx, [ebp - 0x2884]
call fcn.00416b60
test eax, eax
je 0x4cd312
push 0
push 1
push 1
push 0
push 0x593ea4
lea ecx, [ebp - 0x2160]
call fcn.00403db0
mov esi, eax
push 0
lea ecx, [esi + 0xa]
push ecx
push 1
push 0
push 0x593ebc
lea ecx, [ebp - 0x2160]
call fcn.00403db0
test esi, esi
je 0x4cd307
test eax, eax
je 0x4cd307
sub eax, esi
lea ecx, [ebp - 0x2160]
sub eax, 0xb
push eax
lea eax, [esi + 0xb]
push eax
call fcn.00403c70
jmp 0x4cd312
lea ecx, [ebp - 0x2160]
call fcn.00402250
lea ecx, [ebp - 0x2160]
call fcn.00402a90
test al, al
je 0x4cd349
push 1
lea ecx, [ebp - 0x4a78]
call fcn.004014f0
push eax
lea ecx, [ebp - 0x2160]
call fcn.00401ef0
push 0
lea ecx, [ebp - 0x2160]
call fcn.00402870
jmp 0x4cd356
push 3
lea ecx, [ebp - 0x2160]
call fcn.00404a70
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x593e34
lea ecx, [ebp - 0x204c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cd455
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x204c]
call fcn.00402700
push eax
push 0x58aa90
lea ecx, [ebp - 0x2160]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 3
push 0x34
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4cd455
push 0
push 0
push 0
push 0
push 0
push 0
push 0x58aa90
lea ecx, [ebp - 0x204c]
call fcn.00402700
push eax
push 0
push 0x34
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x204c]
call fcn.00402700
push eax
push 0x590940
push 0x58aa90
push 0x58fcb4
lea ecx, [ebp - 0x2160]
call fcn.00402700
push eax
push 0x593ed8
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
lea ecx, [ebp - 0x4a78]
call fcn.00401450
mov esi, dword [ebp - 0x6f54]
test al, al
jne 0x4cd1e0
lea ecx, [ebp - 0x4a78]
mov byte [ebp - 4], 0xb2
call fcn.004013a0
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f54], esi
mov dword [ebp - 0x6f7c], eax
cmp eax, 2
jb 0x4cd150
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ce93f
push 0x24
lea ecx, [ebp - 0x2830]
call fcn.004513f0
lea ecx, [ebp - 0x2830]
call fcn.0041ae80
push 0xc
lea ecx, [ebp - 0x2264]
mov byte [ebp - 4], 0xb6
call fcn.00405e90
lea ecx, [ebp - 0x2264]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x2424]
mov byte [ebp - 4], 0xb7
call fcn.00405e90
lea ecx, [ebp - 0x2424]
call fcn.00401aa0
push 0
push 0x593efc
lea ecx, [ebp - 0x1fd4]
mov byte [ebp - 4], 0xb8
call fcn.004174b0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593f30
lea ecx, [edi + 0x314]
call fcn.00402700
push eax
lea ecx, [ebp - 0x1f98]
call fcn.00402310
cmp dword [edi + 0x30], 0
mov dword [ebp - 0x6f7c], 0
jbe 0x4cd9a2
mov esi, dword [ebp - 0x6f70]
mov dword [ebp - 0x6f4c], esi
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cd9a2
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x593f6c
lea ecx, [ebp - 0x2220]
call fcn.00402700
push eax
push dword [ebp - 0x6f7c]
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x216c]
call fcn.00402310
lea eax, [ebp - 0x204c]
xor edx, edx
push eax
lea ecx, [ebp - 0x216c]
mov dword [ebp - 0x6f54], edx
call fcn.00402700
xor edx, edx
mov ecx, eax
call fcn.00463940
test al, al
je 0x4cd983
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 - 0x204c]
call fcn.004040f0
push 0x100
lea ecx, [ebp - 0x204c]
call fcn.00402700
push eax
lea ecx, [ebp - 0x2830]
call fcn.0041aef0
test al, al
je 0x4cd956
push 0
lea eax, [ebp - 0x2a40]
mov dword [ebp - 0x6eb4], 0
push eax
xorps xmm0, xmm0
lea ecx, [ebp - 0x2830]
push 0x58e680
movups xmmword [ebp - 0x6ec4], xmm0
call fcn.0041b580
test al, al
je 0x4cd956
lea eax, [ebp - 0x2a40]
push eax
lea eax, [ebp - 0x6ec4]
push eax
lea ecx, [ebp - 0x2830]
call fcn.0041cd40
test al, al
je 0x4cd956
lea eax, [ebp - 0x2264]
push eax
push 0x58e6b4
lea eax, [ebp - 0x6ec4]
push eax
lea ecx, [ebp - 0x2830]
call fcn.0041c380
test eax, eax
je 0x4cd935
push 0
push 1
push 1
push 0
push 0x593fa8
lea ecx, [ebp - 0x2264]
call fcn.00403db0
lea ecx, [ebp - 0x2264]
mov esi, eax
call fcn.004022a0
sub eax, 0x12
cmp esi, eax
je 0x4cd92f
push 0
push 1
push 1
push 0
push 0x593fd0
lea ecx, [ebp - 0x2264]
call fcn.00403db0
lea ecx, [ebp - 0x2264]
mov esi, eax
call fcn.004022a0
sub eax, 0xb
cmp esi, eax
je 0x4cd92f
push 0
push 1
push 1
push 0
push 0x593fec
lea ecx, [ebp - 0x2264]
call fcn.00403db0
lea ecx, [ebp - 0x2264]
mov esi, eax
call fcn.004022a0
sub eax, 0xb
cmp esi, eax
je 0x4cd92f
lea eax, [ebp - 0x6ec4]
push eax
lea eax, [ebp - 0x2b84]
push eax
push 0x594008
lea ecx, [ebp - 0x2830]
call fcn.0041b580
test al, al
je 0x4cd92f
lea eax, [ebp - 0x2264]
push eax
push 0x594024
lea eax, [ebp - 0x2b84]
push eax
lea ecx, [ebp - 0x2830]
call fcn.0041c380
test eax, eax
je 0x4cd92f
push 0x591b5c
lea ecx, [ebp - 0x2264]
call fcn.00401fb0
test al, al
jne 0x4cd92f
lea eax, [ebp - 0x2424]
push eax
push 0x58e690
lea eax, [ebp - 0x6ec4]
push eax
lea ecx, [ebp - 0x2830]
call fcn.0041c380
test eax, eax
jne 0x4cd7e4
lea eax, [ebp - 0x2424]
push eax
push 0x58e6a8
lea eax, [ebp - 0x6ec4]
push eax
lea ecx, [ebp - 0x2830]
call fcn.0041c380
test eax, eax
je 0x4cd92f
lea ecx, [ebp - 0x2264]
call fcn.00402700
lea ecx, [ebp - 0x1f98]
mov esi, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.0040cf50
test al, al
jne 0x4cd92f
push 0
lea ecx, [edi + 0x14c]
call fcn.00402700
push eax
push 0x594030
lea ecx, [ebp - 0x2264]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004dc2f0
test al, al
jne 0x4cd92f
push 0
push 0
push 0
push 1
lea ecx, [ebp - 0x2424]
call fcn.00402700
mov ecx, dword [ebp - 0x6f4c]
push eax
call fcn.00402700
push eax
lea ecx, [ebp - 0x2264]
call fcn.00402700
push eax
mov eax, dword [edi + 8]
mov ecx, edi
push 3
push 0x35
push dword [eax + 0xa8]
call fcn.004adef0
mov esi, eax
cmp esi, 0xffffffff
je 0x4cd92f
lea ecx, [ebp - 0x204c]
call fcn.00402700
mov ecx, dword [ebp - 0x6f4c]
push eax
push 0
push 0
push 0
push 0
push 0
call fcn.00402700
push eax
lea ecx, [ebp - 0x2424]
call fcn.00402700
push eax
push 0
push 0x35
push esi
lea ecx, [ebp - 0x1f8c]
call fcn.00402700
push eax
mov ecx, edi
call fcn.004ae070
push 0
push 0
push 0
push 0
push 0
push 0x591c94
lea ecx, [ebp - 0x2424]
call fcn.00402700
mov esi, dword [ebp - 0x6f4c]
mov ecx, esi
push eax
push 0x590940
call fcn.00402700
push eax
push 0x58fcb4
lea ecx, [ebp - 0x2264]
call fcn.00402700
push eax
push 0x591160
lea ecx, [ebp - 0x1f80]
call fcn.00402310
lea eax, [ebp - 0x1f80]
push eax
lea ecx, [ebp - 0x1fd4]
call fcn.00417450
jmp 0x4cd935
mov esi, dword [ebp - 0x6f4c]
lea eax, [ebp - 0x2a40]
push eax
lea eax, [ebp - 0x6ec4]
push eax
lea ecx, [ebp - 0x2830]
call fcn.0041cd40
test al, al
jne 0x4cd682
inc dword [ebp - 0x6f54]
lea eax, [ebp - 0x204c]
push eax
lea ecx, [ebp - 0x216c]
call fcn.00402700
mov edx, dword [ebp - 0x6f54]
mov ecx, eax
call fcn.00463940
test al, al
jne 0x4cd5e2
mov eax, dword [ebp - 0x6f7c]
add esi, 0xc
inc eax
mov dword [ebp - 0x6f4c], esi
mov dword [ebp - 0x6f7c], eax
cmp eax, dword [edi + 0x30]
jb 0x4cd561
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ce91e
push 0
push 0x594058
lea ecx, [ebp - 0x1fd4]
call fcn.004174b0
mov eax, dword [edi + 8]
lea ecx, [ebp - 0x6e60]
push 1
push 0
mov eax, dword [eax + 0xa8]
mov dword [ebp - 0x6e68], eax
mov dword [ebp - 0x6e64], 0x37
call fcn.00401b70
lea ecx, [ebp - 0x1f8c]
mov byte [ebp - 4], 0xb9
call fcn.00402700
lea ecx, [edi + 0x14c]
mov dword [ebp - 0x6e54], eax
mov dword [ebp - 0x6e50], 0
call fcn.00402700
mov dword [ebp - 0x6e4c], eax
lea ecx, [ebp - 0x6e40]
lea eax, [ebp - 0x1fd4]
push 1
mov dword [ebp - 0x6e48], eax
mov eax, dword [edi + 4]
push 0x57b91c
mov dword [ebp - 0x6e44], eax
call fcn.00401b70
mov ecx, edi
mov byte [ebp - 4], 0xba
call fcn.004e8ef0
test al, al
jne 0x4ce913
push 0xc
lea ecx, [ebp - 0x23b0]
call fcn.00405e90
lea ecx, [ebp - 0x23b0]
call fcn.00401aa0
push 0xc
lea ecx, [ebp - 0x23ec]
mov byte [ebp - 4], 0xbb
call fcn.00405e90
lea ecx, [ebp - 0x23ec]
call fcn.00401aa0
xor esi, esi
mov byte [ebp - 4], 0xbc
mov dword [ebp - 0x6f40], esi
cmp dword [edi + 0x30], esi
jbe 0x4cdc35
nop
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cdc35
push esi
lea ecx, [edi + 0x10c]
call fcn.0051c270
mov ecx, eax
call fcn.004022a0
cmp eax, 3
jl 0x4cdc25
lea eax, [ebp - 0x6e60]
push eax
lea ecx, [ebp - 0x2220]
call fcn.00402700
push dword [ebp - 0x6f40]
lea ecx, [edi + 0x10c]
mov esi, eax
call fcn.0051c270
mov ecx, eax
call fcn.00402700
mov edx, esi
mov ecx, eax
call fcn.00463360
mov esi, dword [ebp - 0x6f40]
test al, al
je 0x4cdc25
push esi
lea ecx, [edi + 0x114]
call fcn.0051c270
mov ecx, eax
call fcn.00402700
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x24c8]
mov dword [ebp - 0x6e50], eax
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 - 0x23b0]
call fcn.00402310
lea ecx, [ebp - 0x23b0]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4cdc25
lea ecx, [ebp - 0x23b0]
call fcn.00402700
push eax
lea eax, [ebp - 0x6e68]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4cdc35
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x25e4]
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 - 0x23b0]
call fcn.00402310
lea ecx, [ebp - 0x23b0]
call fcn.00402700
mov ecx, eax
call fcn.00419c60
test al, al
je 0x4cdc25
push 0
lea ecx, [ebp - 0x23b0]
call fcn.00402950
lea ecx, [ebp - 0x23b0]
call fcn.00402700
push eax
lea eax, [ebp - 0x6e68]
mov ecx, edi
push eax
call fcn.004baa50
inc esi
mov dword [ebp - 0x6f40], esi
cmp esi, dword [edi + 0x30]
jb 0x4cdaa0
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ce8fd
lea ecx, [ebp - 0x2638]
mov dword [ebp - 0x6e50], 0x58aa90
call fcn.00402700
push eax
lea eax, [ebp - 0x6e68]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ce8fd
push 0
push 1
lea ecx, [ebp - 0x2644]
call fcn.00402700
push eax
lea ecx, [ebp - 0x23b0]
call fcn.004022c0
mov ecx, eax
call fcn.00402950
lea ecx, [ebp - 0x23b0]
call fcn.00402700
push eax
lea eax, [ebp - 0x6e68]
mov ecx, edi
push eax
call fcn.004baa50
mov ecx, edi
call fcn.004e8ef0
test al, al
jne 0x4ce8fd
mov eax, dword [edi + 0x30]
xor esi, esi
test eax, eax
je 0x4cdd2a
mov eax, dword [ebp - 0x6f68]
lea ecx, [edi + 0x104]
mov dword [ebp - 0x74aa6f54], eax
push ebp
mov ebp, esp
cld
fdiv st(2), st(0)
invalid
cli
invalid
mov byte [ebp - 0x51f], 0x8f
mov byte [ebp - 0x51e], 0x8b
mov byte [ebp - 0x51d], 0x9a
mov byte [ebp - 0x51c], 0xac
mov byte [ebp - 0x51b], 0x98
mov byte [ebp - 0x51a], 0x8f
mov byte [ebp - 0x519], 0x8f
mov byte [ebp - 0x518], 0xea
lea eax, [ebp - 0x524]
push eax
call fcn.004cdd7a
pop ecx
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call fcn.004cdd2f
add esp, 0xc
mov dword [ebp - 0x39c], eax
call fcn.004cdd6a
movsx ecx, word [edi + 0x26]
and byte [ebp - 0x514], 0
and byte [ebp - 0x513], 0
mov byte [ebp - 0x512], 0xe3
and byte [ebp - 0x511], 0
mov byte [ebp - 0x510], 0x5b
mov byte [ebp - 0x50f], 0x79
mov byte [ebp - 0x50e], 0x68
mov byte [ebp - 0x50d], 0x5a
mov byte [ebp - 0x50c], 0x75
mov byte [ebp - 0x50b], 0x70
mov byte [ebp - 0x50a], 0x79
mov byte [ebp - 0x509], 0x4f
mov byte [ebp - 0x508], 0x75
mov byte [ebp - 0x507], 0x66
mov byte [ebp - 0x506], 0x79
mov byte [ebp - 0x505], 0x1c
lea eax, [ebp - 0x514]
push eax
call fcn.004cdd7a
pop ecx
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call fcn.004cdd2f
add esp, 0xc
mov dword [ebp - 0x33c], eax
call fcn.004cdd6a
adc al, 0xa3
lahf
dec esi
push 0x104
lea eax, [ebp - 0x334]
push eax
push dword [ebp + 8]
call dword [ebp - 0x538]
mov dword [ebp - 0x398], eax
mov byte [ebp - 0x544], 1
cmp dword [ebp - 0x398], 0
je 0x4cea5e
call [eax - 0x5197a3a]
invalid
invalid
cli
invalid
cmp dword [ebp - 0x398], 0
je 0x4cec28
cmp dword [ebp + 0xc], 1
je 0x4cec28
cmp dword [ebp + 0xc], 8
jne 0x4cebf0
and byte [ebp - 0x6b8], 0
and byte [ebp - 0x6b7], 0
mov byte [ebp - 0x6b6], 0x9b
and byte [ebp - 0x6b5], 0
mov byte [ebp - 0x6b4], 0x33
mov byte [ebp - 0x6b3], 0x16
mov byte [ebp - 0x6b2], 0xd
mov byte [ebp - 0x6b1], 0x10
mov byte [ebp - 0x6b0], 1
mov byte [ebp - 0x6af], 0x34
mov byte [ebp - 0x6ae], 0x16
mov byte [ebp - 0x6ad], 0xb
mov byte [ebp - 0x6ac], 7
mov byte [ebp - 0x6ab], 1
mov byte [ebp - 0x6aa], 0x17
mov byte [ebp - 0x6a9], 0x17
mov byte [ebp - 0x6a8], 0x29
mov byte [ebp - 0x6a7], 1
mov byte [ebp - 0x6a6], 9
mov byte [ebp - 0x6a5], 0xb
mov byte [ebp - 0x6a4], 0x16
mov byte [ebp - 0x6a3], 0x1d
mov byte [ebp - 0x6a2], 0x64
lea eax, [ebp - 0x6b8]
push eax
call fcn.004cdd7a
pop ecx
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call fcn.004cdd2f
add esp, 0xc
mov dword [ebp - 0x690], eax
mov byte [ebp - 0x6a0], 0x8b
or byte [ebp - 0x69f], 0xff
mov byte [ebp - 0x69e], 0x55
mov byte [ebp - 0x69d], 0x8b
mov byte [ebp - 0x69c], 0xec
lea eax, [ebp - 0x694]
push eax
push 5
lea eax, [ebp - 0x6a0]
push eax
push dword [ebp - 0x33c]
push 0xffffffffffffffff
call dword [ebp - 0x690]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x6c0], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x6bc], eax
push 0x1000
push 8
push dword [ebp - 0x674]
call dword [ebp - 0x67c]
mov dword [ebp - 0x698], eax
call fcn.004cdd6a
aaa
mov ebp, 0xb5ffb1cd
push 0x8dfffff9
test dword [eax - 7], eax
invalid
call fcn.004cdd6a
ror byte [ecx + 0x3d], cl
cmp al, byte [eax - 0x5435b]
inc dword [eax]
push 0
call dword [ebp - 0x340]
mov dword [ebp + 8], eax
push 0x104
lea eax, [ebp - 0x334]
push eax
push 0
call dword [ebp - 0x538]
call fcn.004cdd6a
invalid
and byte [ebp - 0x230], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x22f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
and byte [ebp - 0x12c], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x12b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
and byte [ebp - 0x654], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x653]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
and byte [ebp - 0x504], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x503]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
call fcn.004cdd48
or byte [eax + 0x2ff845c6], ah
mov byte [ebp - 0x24], 0x34
and byte [ebp - 0x36c], 0
and byte [ebp - 0x36b], 0
mov byte [ebp - 0x36a], 0xaa
and byte [ebp - 0x369], 0
mov byte [ebp - 0x368], 0x12
mov byte [ebp - 0x367], 0x30
mov byte [ebp - 0x366], 0x21
mov byte [ebp - 0x365], 6
mov byte [ebp - 0x364], 0x2c
mov byte [ebp - 0x363], 0x26
mov byte [ebp - 0x362], 0x21
mov byte [ebp - 0x361], 0x30
mov byte [ebp - 0x360], 0x38
mov byte [ebp - 0x35f], 0x11
mov byte [ebp - 0x35e], 0x3c
mov byte [ebp - 0x35d], 0x27
mov byte [ebp - 0x35c], 0x30
mov byte [ebp - 0x35b], 0x36
mov byte [ebp - 0x35a], 0x21
mov byte [ebp - 0x359], 0x3a
mov byte [ebp - 0x358], 0x27
mov byte [ebp - 0x357], 0x2c
test dword [ecx + 0x2cfffffc], ebp
mov byte [ebp - 0x356], 0x14
mov byte [ebp - 0x355], 0x55
lea eax, [ebp - 0x36c]
push eax
call fcn.004cdd7a
pop ecx
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call fcn.004cdd2f
add esp, 0xc
mov dword [ebp - 0x3d4], eax
call fcn.004cdd6a
std
nop
jg 0x4ced27
push 0x104
lea eax, [ebp - 0x12c]
push eax
call dword [ebp - 0x3d4]
mov dword [ebp - 0x28], eax
call fcn.004cdd6a
xchg byte [edi + 0x6580eeef], ah
loopne 0x4ced88
and byte [ebp - 0x1f], 0
mov byte [ebp - 0x1e], 0x1d
and byte [ebp - 0x1d], 0
mov byte [ebp - 0x1c], 0xa5
mov byte [ebp - 0x1b], 0x87
mov byte [ebp - 0x1a], 0x96
mov byte [ebp - 0x19], 0xb6
mov byte [ebp - 0x18], 0x87
mov byte [ebp - 0x17], 0x8f
mov byte [ebp - 0x16], 0x92
mov byte [ebp - 0x15], 0xb2
mov byte [ebp - 0x14], 0x83
mov byte [ebp - 0x13], 0x96
mov byte [ebp - 0x12], 0x8a
mov byte [ebp - 0x11], 0xa3
mov byte [ebp - 0x10], 0xe2
lea eax, [ebp - 0x20]
push eax
call fcn.004cdd7a
pop ecx
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call fcn.004cdd2f
add esp, 0xc
mov dword [ebp - 0x370], eax
lea eax, [ebp - 0x654]
push eax
push 0x104
call dword [ebp - 0x370]
mov dword [ebp - 0x550], eax
mov eax, dword [ebp - 0x28]
movsx eax, byte [ebp + eax - 0x12d]
cmp eax, 0x5c
jne 0x4cee16
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x550]
movsx eax, byte [ebp + eax - 0x655]
cmp eax, 0x5c
jne 0x4cee36
mov eax, dword [ebp - 0x550]
dec eax
mov dword [ebp - 0x550], eax
and dword [ebp - 0x338], 0
and dword [ebp - 0x3d0], 0
jmp 0x4cee53
mov eax, dword [ebp - 0x3d0]
inc eax
mov dword [ebp - 0x3d0], eax
cmp dword [ebp - 0x3d0], 0x104
jge 0x4ceeba
mov eax, dword [ebp - 0x3d0]
movsx eax, byte [ebp + eax - 0x334]
and eax, 0x80
test eax, eax
je 0x4cee85
mov eax, dword [ebp - 0x3d0]
inc eax
mov dword [ebp - 0x3d0], eax
jmp 0x4ceeb8
mov eax, dword [ebp - 0x3d0]
movsx eax, byte [ebp + eax - 0x334]
cmp eax, 0x5c
jne 0x4ceea4
mov eax, dword [ebp - 0x3d0]
mov dword [ebp - 0x338], eax
mov eax, dword [ebp - 0x3d0]
movsx eax, byte [ebp + eax - 0x334]
test eax, eax
jne 0x4ceeb8
jmp 0x4ceeba
jmp 0x4cee46
mov eax, dword [ebp - 0x670]
add eax, dword [ebp - 0x384]
mov dword [ebp - 0x670], eax
mov eax, dword [ebp - 0x670]
inc eax
mov dword [ebp - 0x670], eax
push dword [ebp - 0x338]
lea eax, [ebp - 0x334]
push eax
lea eax, [ebp - 0x230]
push eax
call fcn.004cdcdb
add esp, 0xc
mov eax, dword [ebp - 0x670]
inc eax
mov dword [ebp - 0x670], eax
mov eax, dword [ebp - 0x670]
inc eax
mov dword [ebp - 0x670], eax
and dword [ebp - 4], 0
and dword [ebp - 0x3a0], 0
and dword [ebp - 0x37c], 0
and dword [ebp - 0x388], 0
and dword [ebp - 0x374], 0
mov al, byte [ebp - 8]
add al, byte [ebp - 0x670]
mov byte [ebp - 8], al
mov eax, dword [ebp + 8]
mov dword [ebp - 0x548], eax
mov eax, dword [ebp - 0x548]
mov ecx, dword [ebp - 0x548]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x53c], ecx
mov eax, dword [ebp - 0x53c]
mov ecx, dword [ebp + 8]
add ecx, dword [eax + 0x28]
mov dword [ebp - 0x3a8], ecx
mov al, byte [ebp - 0x24]
sub al, byte [ebp - 0x670]
mov byte [ebp - 0x24], al
call fcn.004cdd48
mov edx, 0x4a580a9
cld
invalid
lea ecx, [ebp - 0x2578]
call fcn.00402240
lea ecx, [ebp - 0x291c]
call fcn.00402240
lea ecx, [ebp - 0x2638]
call fcn.00402240
lea ecx, [ebp - 0x2644]
call fcn.00402240
lea ecx, [ebp - 0x2928]
call fcn.00402240
lea ecx, [ebp - 0x2934]
call fcn.00402240
lea ecx, [ebp - 0x27d4]
call fcn.00402240
lea ecx, [ebp - 0x271c]
call fcn.00402240
lea ecx, [ebp - 0x26e0]
call fcn.00402240
lea ecx, [ebp - 0x26d4]
call fcn.00402240
lea ecx, [ebp - 0x2940]
call fcn.00402240
lea ecx, [ebp - 0x27c8]
call fcn.00402240
lea ecx, [ebp - 0x25d8]
call fcn.00402240
lea ecx, [ebp - 0x2958]
call fcn.00402240
lea ecx, [ebp - 0x28a8]
call fcn.00402240
lea ecx, [ebp - 0x26c8]
call fcn.00402240
lea ecx, [ebp - 0x24c8]
call fcn.00402240
lea ecx, [ebp - 0x294c]
call fcn.00402240
lea ecx, [ebp - 0x25e4]
call fcn.00402240
lea ecx, [ebp - 0x29a4]
call fcn.00402240
lea ecx, [ebp - 0x2184]
call fcn.00402240
lea ecx, [ebp - 0x2220]
call fcn.00402240
lea ecx, [ebp - 0x28b4]
call fcn.00402240
lea ecx, [ebp - 0x2120]
call fcn.00402240
lea ecx, [ebp - 0x2178]
call fcn.00402240
lea ecx, [ebp - 0x1f98]
call fcn.00402240
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00535f85
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret