Function at 0x4eed20
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Get ntdll base address
Get number of processors
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x563993
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x774
push esi
push edi
lea ecx, [ebp - 0x59]
call fcn.00421400
mov dword [ebp - 0x508], eax
mov eax, dword [ebp - 0x508]
mov dword [ebp - 0x50c], eax
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x50c]
push ecx
lea ecx, [ebp - 0x18]
call fcn.004211b0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x59]
call fcn.00421410
lea ecx, [ebp - 0x69]
call fcn.00402260
mov dword [ebp - 0x510], eax
mov edx, dword [ebp - 0x510]
mov dword [ebp - 0x514], edx
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x514]
push eax
push 0x580db0
lea ecx, [ebp - 0x68]
call fcn.00403050
mov byte [ebp - 4], 4
push 0
lea ecx, [ebp - 0x68]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00445540
mov edx, dword [ebp + 0xc]
mov dword [edx + 4], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x68]
call fcn.004021f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x69]
call fcn.00402270
lea ecx, [ebp - 0x79]
call fcn.00402260
mov dword [ebp - 0x518], eax
mov eax, dword [ebp - 0x518]
mov dword [ebp - 0x51c], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x51c]
push ecx
push 0x580da4
lea ecx, [ebp - 0x78]
call fcn.00403050
mov byte [ebp - 4], 6
push 0
lea edx, [ebp - 0x78]
push edx
mov ecx, dword [ebp + 8]
call fcn.00445540
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 8], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x78]
call fcn.004021f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x79]
call fcn.00402270
lea ecx, [ebp - 0x89]
call fcn.00402260
mov dword [ebp - 0x520], eax
mov edx, dword [ebp - 0x520]
mov dword [ebp - 0x524], edx
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x524]
push eax
push 0x580d98
lea ecx, [ebp - 0x88]
call fcn.00403050
mov byte [ebp - 4], 8
push 0
lea ecx, [ebp - 0x88]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00445540
mov edx, dword [ebp + 0xc]
mov dword [edx + 0xc], eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x88]
call fcn.004021f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x89]
call fcn.00402270
lea ecx, [ebp - 0x99]
call fcn.00402260
mov dword [ebp - 0x528], eax
mov eax, dword [ebp - 0x528]
mov dword [ebp - 0x52c], eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x52c]
push ecx
push 0x580d8c
lea ecx, [ebp - 0x98]
call fcn.00403050
mov byte [ebp - 4], 0xa
push 0
lea edx, [ebp - 0x98]
push edx
mov ecx, dword [ebp + 8]
call fcn.00445540
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x10], eax
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x98]
call fcn.004021f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x99]
call fcn.00402270
lea ecx, [ebp - 0xa9]
call fcn.00402260
mov dword [ebp - 0x530], eax
mov edx, dword [ebp - 0x530]
mov dword [ebp - 0x534], edx
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x534]
push eax
push 0x580d80
lea ecx, [ebp - 0xa8]
call fcn.00403050
mov byte [ebp - 4], 0xc
push 0
lea ecx, [ebp - 0xa8]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00445540
mov edx, dword [ebp + 0xc]
mov dword [edx], eax
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xa8]
call fcn.004021f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xa9]
call fcn.00402270
lea ecx, [ebp - 0xb9]
call fcn.00402260
mov dword [ebp - 0x538], eax
mov eax, dword [ebp - 0x538]
mov dword [ebp - 0x53c], eax
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x53c]
push ecx
push 0x580d74
lea ecx, [ebp - 0xb8]
call fcn.00403050
mov byte [ebp - 4], 0xe
push 0
lea edx, [ebp - 0xb8]
push edx
mov ecx, dword [ebp + 8]
call fcn.00445540
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x60], eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xb8]
call fcn.004021f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xb9]
call fcn.00402270
lea ecx, [ebp - 0xc9]
call fcn.00402260
mov dword [ebp - 0x540], eax
mov edx, dword [ebp - 0x540]
mov dword [ebp - 0x544], edx
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x544]
push eax
push 0x580d64
lea ecx, [ebp - 0xc8]
call fcn.00403050
mov byte [ebp - 4], 0x10
push 0
lea ecx, [ebp - 0xc8]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00445540
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x18], eax
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xc8]
call fcn.004021f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xc9]
call fcn.00402270
mov eax, dword [ebp + 0xc]
add eax, 0x3c
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x30
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004ee030
add esp, 0xc
lea ecx, [ebp - 0xd9]
call fcn.00402260
mov dword [ebp - 0x548], eax
mov eax, dword [ebp - 0x548]
mov dword [ebp - 0x54c], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x54c]
push ecx
push 0x580d58
lea ecx, [ebp - 0xd8]
call fcn.00403050
mov byte [ebp - 4], 0x12
lea edx, [ebp - 0xd8]
push edx
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp + 8]
call fcn.00445680
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0xd8]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0xd9]
call fcn.00402270
lea ecx, [ebp - 0xe9]
call fcn.00402260
mov dword [ebp - 0x550], eax
mov ecx, dword [ebp - 0x550]
mov dword [ebp - 0x554], ecx
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x554]
push edx
push 0x5796e0
lea ecx, [ebp - 0xe8]
call fcn.00403050
mov byte [ebp - 4], 0x17
push 0x42b40000
lea eax, [ebp - 0xe8]
push eax
lea ecx, [ebp - 0x30]
call fcn.004455f0
mov ecx, dword [ebp + 0xc]
fstp dword [ecx + 0x2c]
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0xe8]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0xe9]
call fcn.00402270
lea ecx, [ebp - 0xf9]
call fcn.00402260
mov dword [ebp - 0x558], eax
mov edx, dword [ebp - 0x558]
mov dword [ebp - 0x55c], edx
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x55c]
push eax
push 0x578b72
lea ecx, [ebp - 0xf8]
call fcn.00403050
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x109]
call fcn.00402260
mov dword [ebp - 0x560], eax
mov ecx, dword [ebp - 0x560]
mov dword [ebp - 0x564], ecx
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x564]
push edx
push 0x580b8c
lea ecx, [ebp - 0x108]
call fcn.00403050
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0xf8]
push eax
lea ecx, [ebp - 0x108]
push ecx
lea edx, [ebp - 0x118]
push edx
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x568], eax
mov eax, dword [ebp - 0x568]
mov dword [ebp - 0x56c], eax
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x56c]
push ecx
call fcn.004eecb0
add esp, 4
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x1c], eax
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x118]
call fcn.004021f0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x108]
call fcn.004021f0
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x109]
call fcn.00402270
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0xf8]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0xf9]
call fcn.00402270
lea ecx, [ebp - 0x125]
call fcn.00402260
mov dword [ebp - 0x570], eax
mov eax, dword [ebp - 0x570]
mov dword [ebp - 0x574], eax
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x574]
push ecx
push 0x578b72
lea ecx, [ebp - 0x124]
call fcn.00403050
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x135]
call fcn.00402260
mov dword [ebp - 0x578], eax
mov edx, dword [ebp - 0x578]
mov dword [ebp - 0x57c], edx
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x57c]
push eax
push 0x580d50
lea ecx, [ebp - 0x134]
call fcn.00403050
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x124]
push ecx
lea edx, [ebp - 0x134]
push edx
lea eax, [ebp - 0x144]
push eax
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x580], eax
mov ecx, dword [ebp - 0x580]
mov dword [ebp - 0x584], ecx
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x584]
push edx
call fcn.004eecb0
add esp, 4
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x20], eax
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x144]
call fcn.004021f0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x134]
call fcn.004021f0
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x135]
call fcn.00402270
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x124]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x125]
call fcn.00402270
lea ecx, [ebp - 0x151]
call fcn.00402260
mov dword [ebp - 0x588], eax
mov edx, dword [ebp - 0x588]
mov dword [ebp - 0x58c], edx
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0x58c]
push eax
push 0x578b72
lea ecx, [ebp - 0x150]
call fcn.00403050
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x161]
call fcn.00402260
mov dword [ebp - 0x590], eax
mov ecx, dword [ebp - 0x590]
mov dword [ebp - 0x594], ecx
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x594]
push edx
push 0x580d48
lea ecx, [ebp - 0x160]
call fcn.00403050
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x150]
push eax
lea ecx, [ebp - 0x160]
push ecx
lea edx, [ebp - 0x170]
push edx
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x598], eax
mov eax, dword [ebp - 0x598]
mov dword [ebp - 0x59c], eax
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x59c]
push ecx
call fcn.004eecb0
add esp, 4
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x24], eax
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x170]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x160]
call fcn.004021f0
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x161]
call fcn.00402270
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x150]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x151]
call fcn.00402270
lea ecx, [ebp - 0x17d]
call fcn.00402260
mov dword [ebp - 0x5a0], eax
mov eax, dword [ebp - 0x5a0]
mov dword [ebp - 0x5a4], eax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x5a4]
push ecx
push 0x578b72
lea ecx, [ebp - 0x17c]
call fcn.00403050
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x18d]
call fcn.00402260
mov dword [ebp - 0x5a8], eax
mov edx, dword [ebp - 0x5a8]
mov dword [ebp - 0x5ac], edx
mov byte [ebp - 4], 0x29
mov eax, dword [ebp - 0x5ac]
push eax
push 0x580b7c
lea ecx, [ebp - 0x18c]
call fcn.00403050
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x17c]
push ecx
lea edx, [ebp - 0x18c]
push edx
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x5b0], eax
mov ecx, dword [ebp - 0x5b0]
mov dword [ebp - 0x5b4], ecx
mov byte [ebp - 4], 0x2b
mov edx, dword [ebp - 0x5b4]
push edx
call fcn.004eecb0
add esp, 4
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x28], eax
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x19c]
call fcn.004021f0
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x18c]
call fcn.004021f0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x18d]
call fcn.00402270
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x17c]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x17d]
call fcn.00402270
lea ecx, [ebp - 0x1a9]
call fcn.00402260
mov dword [ebp - 0x5b8], eax
mov edx, dword [ebp - 0x5b8]
mov dword [ebp - 0x5bc], edx
mov byte [ebp - 4], 0x2c
mov eax, dword [ebp - 0x5bc]
push eax
push 0x580d40
lea ecx, [ebp - 0x1a8]
call fcn.00403050
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x1a8]
push ecx
lea edx, [ebp - 0x1b4]
push edx
mov ecx, dword [ebp + 8]
call fcn.00445680
mov dword [ebp - 0x5c0], eax
mov eax, dword [ebp - 0x5c0]
mov dword [ebp - 0x5c4], eax
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x5c4]
push ecx
lea ecx, [ebp - 0x30]
call fcn.00419d30
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x1b4]
call fcn.00401e50
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x1a8]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x1a9]
call fcn.00402270
lea ecx, [ebp - 0x30]
call fcn.00445720
movzx edx, al
test edx, edx
jne 0x4ef69f
push 0x98
push 0x580bbc
push 0x580d2c
push 0x579c24
push 2
call fcn.00455400
push eax
call fcn.00455630
add esp, 0x18
mov byte [ebp - 0x1b5], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00401e50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00421200
mov al, byte [ebp - 0x1b5]
jmp 0x4f1029
lea ecx, [ebp - 0x1c5]
call fcn.00402260
mov dword [ebp - 0x5c8], eax
mov eax, dword [ebp - 0x5c8]
mov dword [ebp - 0x5cc], eax
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x5cc]
push ecx
push 0x578b72
lea ecx, [ebp - 0x1c4]
call fcn.00403050
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x1d5]
call fcn.00402260
mov dword [ebp - 0x5d0], eax
mov edx, dword [ebp - 0x5d0]
mov dword [ebp - 0x5d4], edx
mov byte [ebp - 4], 0x31
mov eax, dword [ebp - 0x5d4]
push eax
push 0x580d24
lea ecx, [ebp - 0x1d4]
call fcn.00403050
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x1c4]
push ecx
lea edx, [ebp - 0x1d4]
push edx
lea eax, [ebp - 0x1e4]
push eax
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x5d8], eax
mov ecx, dword [ebp - 0x5d8]
mov dword [ebp - 0x5dc], ecx
mov byte [ebp - 4], 0x33
mov edx, dword [ebp - 0x5dc]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0x64
call fcn.00407fc0
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x1e4]
call fcn.004021f0
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x1d4]
call fcn.004021f0
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x1d5]
call fcn.00402270
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x1c4]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x1c5]
call fcn.00402270
lea ecx, [ebp - 0x1f1]
call fcn.00402260
mov dword [ebp - 0x5e0], eax
mov eax, dword [ebp - 0x5e0]
mov dword [ebp - 0x5e4], eax
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x5e4]
push ecx
push 0x580d18
lea ecx, [ebp - 0x1f0]
call fcn.00403050
mov byte [ebp - 4], 0x35
push 0
lea edx, [ebp - 0x1f0]
push edx
lea ecx, [ebp - 0x30]
call fcn.00445540
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x14], eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x1f0]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x1f1]
call fcn.00402270
lea ecx, [ebp - 0x201]
call fcn.00402260
mov dword [ebp - 0x5e8], eax
mov edx, dword [ebp - 0x5e8]
mov dword [ebp - 0x5ec], edx
mov byte [ebp - 4], 0x36
mov eax, dword [ebp - 0x5ec]
push eax
push 0x580d0c
lea ecx, [ebp - 0x200]
call fcn.00403050
mov byte [ebp - 4], 0x37
push 0
lea ecx, [ebp - 0x200]
push ecx
lea ecx, [ebp - 0x30]
call fcn.00445570
mov edx, dword [ebp + 0xc]
mov byte [edx + 0x7c], al
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x200]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x201]
call fcn.00402270
lea ecx, [ebp - 0x211]
call fcn.00402260
mov dword [ebp - 0x5f0], eax
mov eax, dword [ebp - 0x5f0]
mov dword [ebp - 0x5f4], eax
mov byte [ebp - 4], 0x38
mov ecx, dword [ebp - 0x5f4]
push ecx
push 0x580d00
lea ecx, [ebp - 0x210]
call fcn.00403050
mov byte [ebp - 4], 0x39
push 0
lea edx, [ebp - 0x210]
push edx
lea ecx, [ebp - 0x30]
call fcn.00445570
mov ecx, dword [ebp + 0xc]
mov byte [ecx + 0x7d], al
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x210]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x211]
call fcn.00402270
lea ecx, [ebp - 0x221]
call fcn.00402260
mov dword [ebp - 0x5f8], eax
mov edx, dword [ebp - 0x5f8]
mov dword [ebp - 0x5fc], edx
mov byte [ebp - 4], 0x3a
mov eax, dword [ebp - 0x5fc]
push eax
push 0x580cf4
lea ecx, [ebp - 0x220]
call fcn.00403050
mov byte [ebp - 4], 0x3b
push 0x3f800000
lea ecx, [ebp - 0x220]
push ecx
lea ecx, [ebp - 0x30]
call fcn.004455f0
mov edx, dword [ebp + 0xc]
fstp dword [edx + 0x54]
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x220]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x221]
call fcn.00402270
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp + 0xc]
add ecx, 0x70
call fcn.0048f750
lea ecx, [ebp - 0x231]
call fcn.00402260
mov dword [ebp - 0x600], eax
mov edx, dword [ebp - 0x600]
mov dword [ebp - 0x604], edx
mov byte [ebp - 4], 0x3c
mov eax, dword [ebp - 0x604]
push eax
push 0x57a364
lea ecx, [ebp - 0x230]
call fcn.00403050
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x241]
call fcn.00402260
mov dword [ebp - 0x608], eax
mov ecx, dword [ebp - 0x608]
mov dword [ebp - 0x60c], ecx
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x60c]
push edx
push 0x57e2bc
lea ecx, [ebp - 0x240]
call fcn.00403050
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x251]
call fcn.00402260
mov dword [ebp - 0x610], eax
mov eax, dword [ebp - 0x610]
mov dword [ebp - 0x614], eax
mov byte [ebp - 4], 0x40
mov ecx, dword [ebp - 0x614]
push ecx
push 0x580ce4
lea ecx, [ebp - 0x250]
call fcn.00403050
mov byte [ebp - 4], 0x41
lea edx, [ebp - 0x240]
push edx
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x260]
push ecx
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x618], eax
mov edx, dword [ebp - 0x618]
mov dword [ebp - 0x61c], edx
mov byte [ebp - 4], 0x42
lea eax, [ebp - 0x230]
push eax
mov ecx, dword [ebp - 0x61c]
push ecx
lea edx, [ebp - 0x18]
push edx
call fcn.0044d410
add esp, 0xc
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x260]
call fcn.004021f0
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x250]
call fcn.004021f0
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x251]
call fcn.00402270
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x240]
call fcn.004021f0
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x241]
call fcn.00402270
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x230]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x231]
call fcn.00402270
mov dword [ebp - 0x34], 0
jmp 0x4efafb
mov eax, dword [ebp - 0x34]
add eax, 1
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x34]
cmp edx, dword [ecx]
jae 0x4efbb4
mov eax, dword [ebp - 0x34]
lea esi, [eax + eax + 1]
lea ecx, [ebp - 0x18]
call fcn.00421170
cmp esi, eax
jae 0x4efb89
mov ecx, dword [ebp - 0x34]
shl ecx, 1
push ecx
lea ecx, [ebp - 0x18]
call fcn.00421190
push eax
call fcn.0044b840
fstp dword [ebp - 0x620]
add esp, 4
mov edx, dword [ebp - 0x34]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0x70
call fcn.004024b0
mov ecx, dword [ebp - 0x620]
mov dword [eax], ecx
mov edx, dword [ebp - 0x34]
lea eax, [edx + edx + 1]
push eax
lea ecx, [ebp - 0x18]
call fcn.00421190
push eax
call fcn.0044b840
fstp dword [ebp - 0x624]
add esp, 4
mov ecx, dword [ebp - 0x34]
push ecx
mov ecx, dword [ebp + 0xc]
add ecx, 0x70
call fcn.004024b0
mov edx, dword [ebp - 0x624]
mov dword [eax + 4], edx
jmp 0x4efbaf
push 0
mov ecx, dword [ebp + 0xc]
add ecx, 0x70
call fcn.004024b0
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x70
call fcn.004024b0
mov dword [eax], esi
mov dword [eax + 4], edi
jmp 0x4efaf2
lea ecx, [ebp - 0x26d]
call fcn.00402260
mov dword [ebp - 0x628], eax
mov ecx, dword [ebp - 0x628]
mov dword [ebp - 0x62c], ecx
mov byte [ebp - 4], 0x43
mov edx, dword [ebp - 0x62c]
push edx
push 0x580cd0
lea ecx, [ebp - 0x26c]
call fcn.00403050
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x20]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00445620
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x26c]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x26d]
call fcn.00402270
lea ecx, [ebp - 0x20]
call fcn.00446c40
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x80], eax
lea ecx, [ebp - 0x295]
call fcn.00402260
mov dword [ebp - 0x630], eax
mov eax, dword [ebp - 0x630]
mov dword [ebp - 0x634], eax
mov byte [ebp - 4], 0x48
mov ecx, dword [ebp - 0x634]
push ecx
push 0x580cc0
lea ecx, [ebp - 0x294]
call fcn.00403050
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x27d]
call fcn.00402260
mov dword [ebp - 0x638], eax
mov edx, dword [ebp - 0x638]
mov dword [ebp - 0x63c], edx
mov byte [ebp - 4], 0x4a
mov eax, dword [ebp - 0x63c]
push eax
push 0x580cb4
lea ecx, [ebp - 0x27c]
call fcn.00403050
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0x27c]
push ecx
lea edx, [ebp - 0x288]
push edx
mov ecx, dword [ebp + 8]
call fcn.00445680
mov dword [ebp - 0x640], eax
mov eax, dword [ebp - 0x640]
mov dword [ebp - 0x644], eax
mov byte [ebp - 4], 0x4c
push 0
lea ecx, [ebp - 0x294]
push ecx
mov ecx, dword [ebp - 0x644]
call fcn.00445540
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x84], eax
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0x288]
call fcn.00401e50
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x27c]
call fcn.004021f0
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x27d]
call fcn.00402270
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x294]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x295]
call fcn.00402270
lea ecx, [ebp - 0x2bd]
call fcn.00402260
mov dword [ebp - 0x648], eax
mov eax, dword [ebp - 0x648]
mov dword [ebp - 0x64c], eax
mov byte [ebp - 4], 0x4d
mov ecx, dword [ebp - 0x64c]
push ecx
push 0x580cac
lea ecx, [ebp - 0x2bc]
call fcn.00403050
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x2a5]
call fcn.00402260
mov dword [ebp - 0x650], eax
mov edx, dword [ebp - 0x650]
mov dword [ebp - 0x654], edx
mov byte [ebp - 4], 0x4f
mov eax, dword [ebp - 0x654]
push eax
push 0x580cb4
lea ecx, [ebp - 0x2a4]
call fcn.00403050
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x2a4]
push ecx
lea edx, [ebp - 0x2b0]
push edx
mov ecx, dword [ebp + 8]
call fcn.00445680
mov dword [ebp - 0x658], eax
mov eax, dword [ebp - 0x658]
mov dword [ebp - 0x65c], eax
mov byte [ebp - 4], 0x51
push 1
lea ecx, [ebp - 0x2bc]
push ecx
mov ecx, dword [ebp - 0x65c]
call fcn.00445570
mov edx, dword [ebp + 0xc]
mov byte [edx + 0x88], al
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x2b0]
call fcn.00401e50
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x2a4]
call fcn.004021f0
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x2a5]
call fcn.00402270
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x2bc]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x2bd]
call fcn.00402270
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x80]
push ecx
mov ecx, dword [ebp + 0xc]
add ecx, 0x8c
call fcn.004f23a0
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x80]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x98
call fcn.004f20d0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x80]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0xbc
call fcn.004f2450
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x80]
push ecx
mov ecx, dword [ebp + 0xc]
add ecx, 0xa4
call fcn.004f2260
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x80]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0xb0
call fcn.004f23c0
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x58], 0x3f800000
mov dword [ebp - 0x34], 0
jmp 0x4efede
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax + 0x80]
jae 0x4f06e2
mov edx, dword [ebp - 0x34]
push edx
lea eax, [ebp - 0x2c8]
push eax
lea ecx, [ebp - 0x20]
call fcn.00446be0
mov dword [ebp - 0x660], eax
mov ecx, dword [ebp - 0x660]
mov dword [ebp - 0x664], ecx
mov byte [ebp - 4], 0x52
mov edx, dword [ebp - 0x664]
push edx
lea ecx, [ebp - 0x30]
call fcn.00419d30
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x2c8]
call fcn.00401e50
lea ecx, [ebp - 0x2d9]
call fcn.00402260
mov dword [ebp - 0x668], eax
mov eax, dword [ebp - 0x668]
mov dword [ebp - 0x66c], eax
mov byte [ebp - 4], 0x53
mov ecx, dword [ebp - 0x66c]
push ecx
push 0x57a364
lea ecx, [ebp - 0x2d8]
call fcn.00403050
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x2e9]
call fcn.00402260
mov dword [ebp - 0x670], eax
mov edx, dword [ebp - 0x670]
mov dword [ebp - 0x674], edx
mov byte [ebp - 4], 0x55
mov eax, dword [ebp - 0x674]
push eax
push 0x578b72
lea ecx, [ebp - 0x2e8]
call fcn.00403050
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x2f9]
call fcn.00402260
mov dword [ebp - 0x678], eax
mov ecx, dword [ebp - 0x678]
mov dword [ebp - 0x67c], ecx
mov byte [ebp - 4], 0x57
mov edx, dword [ebp - 0x67c]
push edx
push 0x580ca4
lea ecx, [ebp - 0x2f8]
call fcn.00403050
mov byte [ebp - 4], 0x58
lea eax, [ebp - 0x2e8]
push eax
lea ecx, [ebp - 0x2f8]
push ecx
lea edx, [ebp - 0x308]
push edx
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x680], eax
mov eax, dword [ebp - 0x680]
mov dword [ebp - 0x684], eax
mov byte [ebp - 4], 0x59
mov ecx, dword [ebp + 0xc]
mov esi, dword [ecx]
shl esi, 1
lea edx, [ebp - 0x2d8]
push edx
mov eax, dword [ebp - 0x684]
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.0044d410
add esp, 0xc
cmp eax, esi
sbb edx, edx
neg edx
mov byte [ebp - 0x2c9], dl
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x308]
call fcn.004021f0
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x2f8]
call fcn.004021f0
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x2f9]
call fcn.00402270
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x2e8]
call fcn.004021f0
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x2e9]
call fcn.00402270
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x2d8]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x2d9]
call fcn.00402270
movzx eax, byte [ebp - 0x2c9]
test eax, eax
je 0x4f011c
push 0xca
push 0x580bbc
push 0x580c98
push 0x579c24
push 2
call fcn.00455400
push eax
call fcn.00455630
add esp, 0x18
mov byte [ebp - 0x309], 0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20]
call fcn.00401e10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00401e50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00421200
mov al, byte [ebp - 0x309]
jmp 0x4f1029
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0xb0
call fcn.004a4690
mov ecx, eax
call fcn.0048f750
mov dword [ebp - 0x44], 0
jmp 0x4f014d
mov ecx, dword [ebp - 0x44]
add ecx, 1
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x44]
cmp eax, dword [edx]
jae 0x4f0201
mov ecx, dword [ebp - 0x44]
shl ecx, 1
push ecx
lea ecx, [ebp - 0x18]
call fcn.00421190
mov ecx, eax
call fcn.00403fd0
push eax
call fcn.005001fa
add esp, 4
fst dword [ebp - 0x688]
fstp dword [ebp - 0x68c]
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0xb0
call fcn.004a4690
mov ecx, eax
call fcn.004024b0
mov ecx, dword [ebp - 0x68c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x44]
lea eax, [edx + edx + 1]
push eax
lea ecx, [ebp - 0x18]
call fcn.00421190
mov ecx, eax
call fcn.00403fd0
push eax
call fcn.005001fa
add esp, 4
fst dword [ebp - 0x690]
fstp dword [ebp - 0x694]
mov ecx, dword [ebp - 0x44]
push ecx
mov edx, dword [ebp - 0x34]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0xb0
call fcn.004a4690
mov ecx, eax
call fcn.004024b0
mov ecx, dword [ebp - 0x694]
mov dword [eax + 4], ecx
jmp 0x4f0144
lea ecx, [ebp - 0x319]
call fcn.00402260
mov dword [ebp - 0x698], eax
mov edx, dword [ebp - 0x698]
mov dword [ebp - 0x69c], edx
mov byte [ebp - 4], 0x5a
mov eax, dword [ebp - 0x69c]
push eax
push 0x580c8c
lea ecx, [ebp - 0x318]
call fcn.00403050
mov byte [ebp - 4], 0x5b
push 0
lea ecx, [ebp - 0x318]
push ecx
lea ecx, [ebp - 0x30]
call fcn.00445540
mov esi, eax
mov edx, dword [ebp - 0x34]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0x98
call fcn.0040d4e0
mov dword [eax], esi
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x318]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x319]
call fcn.00402270
lea ecx, [ebp - 0x329]
call fcn.00402260
mov dword [ebp - 0x6a0], eax
mov eax, dword [ebp - 0x6a0]
mov dword [ebp - 0x6a4], eax
mov byte [ebp - 4], 0x5c
mov ecx, dword [ebp - 0x6a4]
push ecx
push 0x57a378
lea ecx, [ebp - 0x328]
call fcn.00403050
mov byte [ebp - 4], 0x5d
push 0
lea edx, [ebp - 0x328]
push edx
lea ecx, [ebp - 0x30]
call fcn.004455f0
fstp dword [ebp - 0x6a8]
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x8c
call fcn.004a45a0
mov ecx, dword [ebp - 0x6a8]
mov dword [eax], ecx
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0x328]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x329]
call fcn.00402270
lea ecx, [ebp - 0x339]
call fcn.00402260
mov dword [ebp - 0x6ac], eax
mov edx, dword [ebp - 0x6ac]
mov dword [ebp - 0x6b0], edx
mov byte [ebp - 4], 0x5e
mov eax, dword [ebp - 0x6b0]
push eax
push 0x578b72
lea ecx, [ebp - 0x338]
call fcn.00403050
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x349]
call fcn.00402260
mov dword [ebp - 0x6b4], eax
mov ecx, dword [ebp - 0x6b4]
mov dword [ebp - 0x6b8], ecx
mov byte [ebp - 4], 0x60
mov edx, dword [ebp - 0x6b8]
push edx
push 0x580d24
lea ecx, [ebp - 0x348]
call fcn.00403050
mov byte [ebp - 4], 0x61
lea eax, [ebp - 0x338]
push eax
lea ecx, [ebp - 0x348]
push ecx
lea edx, [ebp - 0x358]
push edx
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x6bc], eax
mov eax, dword [ebp - 0x6bc]
mov dword [ebp - 0x6c0], eax
mov byte [ebp - 4], 0x62
mov ecx, dword [ebp - 0x6c0]
push ecx
mov edx, dword [ebp - 0x34]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0xbc
call fcn.00421190
mov ecx, eax
call fcn.00407fc0
mov byte [ebp - 4], 0x61
lea ecx, [ebp - 0x358]
call fcn.004021f0
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x348]
call fcn.004021f0
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x349]
call fcn.00402270
mov byte [ebp - 4], 0x5e
lea ecx, [ebp - 0x338]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x339]
call fcn.00402270
lea ecx, [ebp - 0x365]
call fcn.00402260
mov dword [ebp - 0x6c4], eax
mov eax, dword [ebp - 0x6c4]
mov dword [ebp - 0x6c8], eax
mov byte [ebp - 4], 0x63
mov ecx, dword [ebp - 0x6c8]
push ecx
push 0x580cf4
lea ecx, [ebp - 0x364]
call fcn.00403050
mov byte [ebp - 4], 0x64
push 0x3f800000
lea edx, [ebp - 0x364]
push edx
lea ecx, [ebp - 0x30]
call fcn.004455f0
mov eax, dword [ebp + 0xc]
fstp dword [eax + 0x58]
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0x364]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x365]
call fcn.00402270
lea ecx, [ebp - 0x40]
call fcn.00409030
mov byte [ebp - 4], 0x65
mov dword [ebp - 0x44], 0
jmp 0x4f04b5
mov ecx, dword [ebp - 0x44]
add ecx, 1
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x44]
cmp eax, dword [edx]
jae 0x4f04ce
push 0x580c88
lea ecx, [ebp - 0x40]
call fcn.004210b0
jmp 0x4f04ac
lea ecx, [ebp - 0x375]
call fcn.00402260
mov dword [ebp - 0x6cc], eax
mov ecx, dword [ebp - 0x6cc]
mov dword [ebp - 0x6d0], ecx
mov byte [ebp - 4], 0x66
mov edx, dword [ebp - 0x6d0]
push edx
push 0x57a364
lea ecx, [ebp - 0x374]
call fcn.00403050
mov byte [ebp - 4], 0x67
lea ecx, [ebp - 0x385]
call fcn.00402260
mov dword [ebp - 0x6d4], eax
mov eax, dword [ebp - 0x6d4]
mov dword [ebp - 0x6d8], eax
mov byte [ebp - 4], 0x68
mov ecx, dword [ebp - 0x6d8]
push ecx
push 0x580c7c
lea ecx, [ebp - 0x384]
call fcn.00403050
mov byte [ebp - 4], 0x69
lea edx, [ebp - 0x40]
push edx
lea eax, [ebp - 0x384]
push eax
lea ecx, [ebp - 0x394]
push ecx
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x6dc], eax
mov edx, dword [ebp - 0x6dc]
mov dword [ebp - 0x6e0], edx
mov byte [ebp - 4], 0x6a
lea eax, [ebp - 0x374]
push eax
mov ecx, dword [ebp - 0x6e0]
push ecx
lea edx, [ebp - 0x18]
push edx
call fcn.0044d410
add esp, 0xc
mov ecx, dword [ebp + 0xc]
cmp eax, dword [ecx]
sbb edx, edx
neg edx
mov byte [ebp - 0x366], dl
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x394]
call fcn.004021f0
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x384]
call fcn.004021f0
mov byte [ebp - 4], 0x67
lea ecx, [ebp - 0x385]
call fcn.00402270
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0x374]
call fcn.004021f0
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x375]
call fcn.00402270
movzx eax, byte [ebp - 0x366]
test eax, eax
je 0x4f065e
push 0xe1
push 0x580bbc
push 0x580c6c
push 0x579c24
push 2
call fcn.00455400
push eax
call fcn.00455630
add esp, 0x18
mov byte [ebp - 0x395], 0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x40]
call fcn.004021f0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20]
call fcn.00401e10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00401e50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00421200
mov al, byte [ebp - 0x395]
jmp 0x4f1029
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0xa4
call fcn.004a41f0
mov ecx, eax
call fcn.004f20d0
mov dword [ebp - 0x44], 0
jmp 0x4f068f
mov ecx, dword [ebp - 0x44]
add ecx, 1
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x44]
cmp eax, dword [edx]
jae 0x4f06d1
mov ecx, dword [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x18]
call fcn.00421190
push eax
call fcn.0044c630
add esp, 4
mov esi, eax
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0xa4
call fcn.004a41f0
mov ecx, eax
call fcn.0040d4e0
mov dword [eax], esi
jmp 0x4f0686
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x40]
call fcn.004021f0
jmp 0x4efed5
lea ecx, [ebp - 0x3a5]
call fcn.00402260
mov dword [ebp - 0x6e4], eax
mov ecx, dword [ebp - 0x6e4]
mov dword [ebp - 0x6e8], ecx
mov byte [ebp - 4], 0x6b
mov edx, dword [ebp - 0x6e8]
push edx
push 0x580c64
lea ecx, [ebp - 0x3a4]
call fcn.00403050
mov byte [ebp - 4], 0x6c
lea eax, [ebp - 0x3a4]
push eax
lea ecx, [ebp - 0x3b0]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00445680
mov dword [ebp - 0x6ec], eax
mov edx, dword [ebp - 0x6ec]
mov dword [ebp - 0x6f0], edx
mov byte [ebp - 4], 0x6d
mov eax, dword [ebp - 0x6f0]
push eax
lea ecx, [ebp - 0x30]
call fcn.00419d30
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x3b0]
call fcn.00401e50
mov byte [ebp - 4], 0x6b
lea ecx, [ebp - 0x3a4]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x3a5]
call fcn.00402270
lea ecx, [ebp - 0x3bd]
call fcn.00402260
mov dword [ebp - 0x6f4], eax
mov ecx, dword [ebp - 0x6f4]
mov dword [ebp - 0x6f8], ecx
mov byte [ebp - 4], 0x6e
mov edx, dword [ebp - 0x6f8]
push edx
push 0x580c5c
lea ecx, [ebp - 0x3bc]
call fcn.00403050
mov byte [ebp - 4], 0x6f
push 0
lea eax, [ebp - 0x3bc]
push eax
lea ecx, [ebp - 0x30]
call fcn.00445540
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0xc8], eax
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0x3bc]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x3bd]
call fcn.00402270
lea ecx, [ebp - 0x3cd]
call fcn.00402260
mov dword [ebp - 0x6fc], eax
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x700], edx
mov byte [ebp - 4], 0x70
mov eax, dword [ebp - 0x700]
push eax
push 0x580c48
lea ecx, [ebp - 0x3cc]
call fcn.00403050
mov byte [ebp - 4], 0x71
push 0
lea ecx, [ebp - 0x3cc]
push ecx
lea ecx, [ebp - 0x30]
call fcn.004455f0
mov edx, dword [ebp + 0xc]
fstp dword [edx + 0xcc]
mov byte [ebp - 4], 0x70
lea ecx, [ebp - 0x3cc]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x3cd]
call fcn.00402270
lea ecx, [ebp - 0x3dd]
call fcn.00402260
mov dword [ebp - 0x704], eax
mov eax, dword [ebp - 0x704]
mov dword [ebp - 0x708], eax
mov byte [ebp - 4], 0x72
mov ecx, dword [ebp - 0x708]
push ecx
push 0x578b72
lea ecx, [ebp - 0x3dc]
call fcn.00403050
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x3ed]
call fcn.00402260
mov dword [ebp - 0x70c], eax
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x710], edx
mov byte [ebp - 4], 0x74
mov eax, dword [ebp - 0x710]
push eax
push 0x580d24
lea ecx, [ebp - 0x3ec]
call fcn.00403050
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0x3dc]
push ecx
lea edx, [ebp - 0x3ec]
push edx
lea eax, [ebp - 0x3fc]
push eax
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x714], eax
mov ecx, dword [ebp - 0x714]
mov dword [ebp - 0x718], ecx
mov byte [ebp - 4], 0x76
mov edx, dword [ebp - 0x718]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0xd0
call fcn.00407fc0
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0x3fc]
call fcn.004021f0
mov byte [ebp - 4], 0x74
lea ecx, [ebp - 0x3ec]
call fcn.004021f0
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x3ed]
call fcn.00402270
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0x3dc]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x3dd]
call fcn.00402270
lea ecx, [ebp - 0x409]
call fcn.00402260
mov dword [ebp - 0x71c], eax
mov eax, dword [ebp - 0x71c]
mov dword [ebp - 0x720], eax
mov byte [ebp - 4], 0x77
mov ecx, dword [ebp - 0x720]
push ecx
push 0x580c3c
lea ecx, [ebp - 0x408]
call fcn.00403050
mov byte [ebp - 4], 0x78
push 0
lea edx, [ebp - 0x408]
push edx
lea ecx, [ebp - 0x30]
call fcn.00445540
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0xe8], eax
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x408]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x409]
call fcn.00402270
lea ecx, [ebp - 0x419]
call fcn.00402260
mov dword [ebp - 0x724], eax
mov edx, dword [ebp - 0x724]
mov dword [ebp - 0x728], edx
mov byte [ebp - 4], 0x79
mov eax, dword [ebp - 0x728]
push eax
push 0x580cf4
lea ecx, [ebp - 0x418]
call fcn.00403050
mov byte [ebp - 4], 0x7a
push 0x3f800000
lea ecx, [ebp - 0x418]
push ecx
lea ecx, [ebp - 0x30]
call fcn.004455f0
mov edx, dword [ebp + 0xc]
fstp dword [edx + 0x5c]
mov byte [ebp - 4], 0x79
lea ecx, [ebp - 0x418]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x419]
call fcn.00402270
lea ecx, [ebp - 0x429]
call fcn.00402260
mov dword [ebp - 0x72c], eax
mov eax, dword [ebp - 0x72c]
mov dword [ebp - 0x730], eax
mov byte [ebp - 4], 0x7b
mov ecx, dword [ebp - 0x730]
push ecx
push 0x57a364
lea ecx, [ebp - 0x428]
call fcn.00403050
mov byte [ebp - 4], 0x7c
lea ecx, [ebp - 0x439]
call fcn.00402260
mov dword [ebp - 0x734], eax
mov edx, dword [ebp - 0x734]
mov dword [ebp - 0x738], edx
mov byte [ebp - 4], 0x7d
mov eax, dword [ebp - 0x738]
push eax
push 0x578b72
lea ecx, [ebp - 0x438]
call fcn.00403050
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0x449]
call fcn.00402260
mov dword [ebp - 0x73c], eax
mov ecx, dword [ebp - 0x73c]
mov dword [ebp - 0x740], ecx
mov byte [ebp - 4], 0x7f
mov edx, dword [ebp - 0x740]
push edx
push 0x580c34
lea ecx, [ebp - 0x448]
call fcn.00403050
mov byte [ebp - 4], 0x80
lea eax, [ebp - 0x438]
push eax
lea ecx, [ebp - 0x448]
push ecx
lea edx, [ebp - 0x458]
push edx
lea ecx, [ebp - 0x30]
call fcn.004452c0
mov dword [ebp - 0x744], eax
mov eax, dword [ebp - 0x744]
mov dword [ebp - 0x748], eax
mov byte [ebp - 4], 0x81
lea ecx, [ebp - 0x428]
push ecx
mov edx, dword [ebp - 0x748]
push edx
lea eax, [ebp - 0x18]
push eax
call fcn.0044d410
add esp, 0xc
mov ecx, dword [ebp + 0xc]
cmp eax, dword [ecx]
sbb edx, edx
neg edx
mov byte [ebp - 0x41a], dl
mov byte [ebp - 4], 0x80
lea ecx, [ebp - 0x458]
call fcn.004021f0
mov byte [ebp - 4], 0x7f
lea ecx, [ebp - 0x448]
call fcn.004021f0
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0x449]
call fcn.00402270
mov byte [ebp - 4], 0x7d
lea ecx, [ebp - 0x438]
call fcn.004021f0
mov byte [ebp - 4], 0x7c
lea ecx, [ebp - 0x439]
call fcn.00402270
mov byte [ebp - 4], 0x7b
lea ecx, [ebp - 0x428]
call fcn.004021f0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x429]
call fcn.00402270
movzx eax, byte [ebp - 0x41a]
test eax, eax
je 0x4f0c42
push 0xf7
push 0x580bbc
push 0x580c20
push 0x579c24
push 2
call fcn.00455400
push eax
call fcn.00455630
add esp, 0x18
mov byte [ebp - 0x459], 0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20]
call fcn.00401e10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00401e50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00421200
mov al, byte [ebp - 0x459]
jmp 0x4f1029
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0xdc
call fcn.004f20d0
mov dword [ebp - 0x48], 0
jmp 0x4f0c68
mov eax, dword [ebp - 0x48]
add eax, 1
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x48]
cmp edx, dword [ecx]
jae 0x4f0c9f
mov eax, dword [ebp - 0x48]
push eax
lea ecx, [ebp - 0x18]
call fcn.00421190
push eax
call fcn.0044c630
add esp, 4
mov esi, eax
mov ecx, dword [ebp - 0x48]
push ecx
mov ecx, dword [ebp + 0xc]
add ecx, 0xdc
call fcn.0040d4e0
mov dword [eax], esi
jmp 0x4f0c5f
lea ecx, [ebp - 0x469]
call fcn.00402260
mov dword [ebp - 0x74c], eax
mov edx, dword [ebp - 0x74c]
mov dword [ebp - 0x750], edx
mov byte [ebp - 4], 0x82
mov eax, dword [ebp - 0x750]
push eax
push 0x580c10
lea ecx, [ebp - 0x468]
call fcn.00403050
mov byte [ebp - 4], 0x83
lea ecx, [ebp - 0x468]
push ecx
lea edx, [ebp - 0x28]
push edx
mov ecx, dword [ebp + 8]
call fcn.00445620
mov byte [ebp - 4], 0x86
lea ecx, [ebp - 0x468]
call fcn.004021f0
mov byte [ebp - 4], 0x85
lea ecx, [ebp - 0x469]
call fcn.00402270
mov ecx, dword [ebp + 0xc]
add ecx, 0x48
call fcn.004f2380
lea ecx, [ebp - 0x28]
call fcn.00446c40
test eax, eax
jne 0x4f0db4
mov dword [ebp - 0x480], 0
push 0x5ce310
lea eax, [ebp - 0x480]
push eax
lea ecx, [ebp - 0x490]
push ecx
call fcn.004f3b00
add esp, 0xc
mov dword [ebp - 0x754], eax
mov edx, dword [ebp - 0x754]
mov dword [ebp - 0x758], edx
mov byte [ebp - 4], 0x87
mov eax, dword [ebp - 0x758]
push eax
lea ecx, [ebp - 0x47c]
call fcn.004f3b50
mov byte [ebp - 4], 0x88
lea ecx, [ebp - 0x47c]
push ecx
lea edx, [ebp - 0x498]
push edx
mov ecx, dword [ebp + 0xc]
add ecx, 0x48
call fcn.004f2360
mov byte [ebp - 4], 0x87
lea ecx, [ebp - 0x47c]
call fcn.004b8280
mov byte [ebp - 4], 0x85
lea ecx, [ebp - 0x490]
call fcn.004f1040
jmp 0x4f0fe9
mov dword [ebp - 0x4c], 0
lea ecx, [ebp - 0x28]
call fcn.00446c40
mov dword [ebp - 0x50], eax
jmp 0x4f0dd1
mov eax, dword [ebp - 0x4c]
add eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x4c]
cmp ecx, dword [ebp - 0x50]
jge 0x4f0fe9
mov edx, dword [ebp - 0x4c]
push edx
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x28]
call fcn.00446be0
mov byte [ebp - 4], 0x89
lea ecx, [ebp - 0x4b5]
call fcn.00402260
mov dword [ebp - 0x75c], eax
mov ecx, dword [ebp - 0x75c]
mov dword [ebp - 0x760], ecx
mov byte [ebp - 4], 0x8a
mov edx, dword [ebp - 0x760]
push edx
push 0x578b72
lea ecx, [ebp - 0x4b4]
call fcn.00403050
mov byte [ebp - 4], 0x8b
lea ecx, [ebp - 0x4c5]
call fcn.00402260
mov dword [ebp - 0x764], eax
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x768], eax
mov byte [ebp - 4], 0x8c
mov ecx, dword [ebp - 0x768]
push ecx
push 0x578f14
lea ecx, [ebp - 0x4c4]
call fcn.00403050
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x4e5]
call fcn.00402260
mov dword [ebp - 0x76c], eax
mov edx, dword [ebp - 0x76c]
mov dword [ebp - 0x770], edx
mov byte [ebp - 4], 0x8e
mov eax, dword [ebp - 0x770]
push eax
push 0x580c08
lea ecx, [ebp - 0x4e4]
call fcn.00403050
mov byte [ebp - 4], 0x8f
push 0
lea ecx, [ebp - 0x4e4]
push ecx
lea ecx, [ebp - 0x58]
call fcn.00445540
mov dword [ebp - 0x4d8], eax
lea edx, [ebp - 0x4b4]
push edx
lea eax, [ebp - 0x4c4]
push eax
lea ecx, [ebp - 0x4d4]
push ecx
lea ecx, [ebp - 0x58]
call fcn.004452c0
mov dword [ebp - 0x774], eax
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x778], edx
mov byte [ebp - 4], 0x90
mov eax, dword [ebp - 0x778]
push eax
lea ecx, [ebp - 0x4d8]
push ecx
lea edx, [ebp - 0x4f8]
push edx
call fcn.004f3b00
add esp, 0xc
mov dword [ebp - 0x77c], eax
mov eax, dword [ebp - 0x77c]
mov dword [ebp - 0x780], eax
mov byte [ebp - 4], 0x91
mov ecx, dword [ebp - 0x780]
push ecx
lea ecx, [ebp - 0x4a8]
call fcn.004f3b50
mov byte [ebp - 4], 0x92
lea edx, [ebp - 0x4a8]
push edx
lea eax, [ebp - 0x500]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x48
call fcn.004f2360
mov byte [ebp - 4], 0x91
lea ecx, [ebp - 0x4a8]
call fcn.004b8280
mov byte [ebp - 4], 0x90
lea ecx, [ebp - 0x4f8]
call fcn.004f1040
mov byte [ebp - 4], 0x8f
lea ecx, [ebp - 0x4d4]
call fcn.004021f0
mov byte [ebp - 4], 0x8e
lea ecx, [ebp - 0x4e4]
call fcn.004021f0
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x4e5]
call fcn.00402270
mov byte [ebp - 4], 0x8c
lea ecx, [ebp - 0x4c4]
call fcn.004021f0
mov byte [ebp - 4], 0x8b
lea ecx, [ebp - 0x4c5]
call fcn.00402270
mov byte [ebp - 4], 0x8a
lea ecx, [ebp - 0x4b4]
call fcn.004021f0
mov byte [ebp - 4], 0x89
lea ecx, [ebp - 0x4b5]
call fcn.00402270
mov byte [ebp - 4], 0x85
lea ecx, [ebp - 0x58]
call fcn.00401e50
jmp 0x4f0dc8
mov byte [ebp - 0x501], 1
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x28]
call fcn.00401e10
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20]
call fcn.00401e10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00401e50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00421200
mov al, byte [ebp - 0x501]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret