Function at 0x44d03a
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x6187db
mov eax, dword fs:[0]
push eax
sub esp, 0x38
mov eax, dword [0x6b9a04]
xor eax, esp
mov dword [esp + 0x30], eax
push ebx
push esi
push edi
mov eax, dword [0x6b9a04]
xor eax, esp
push eax
lea eax, [esp + 0x48]
mov dword fs:[0], eax
mov esi, ecx
call fcn.0044f84d
or eax, 1
push eax
mov ecx, esi
call fcn.0044f860
lea eax, [esp + 0x1c]
lea edi, [esi + 0xbc]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x3f8
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
xor ebx, ebx
mov eax, edi
mov dword [esp + 0x20], ebx
call fcn.0044c5af
push ebx
push ecx
call fcn.0040cb83
add esp, 4
call fcn.0049b754
test eax, eax
je 0x44d135
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x80b9
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x80ba
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x8310
call fcn.0044c5af
push ebx
push ecx
call fcn.0040cb83
add esp, 4
call fcn.0049b754
test eax, eax
je 0x44d125
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x80ed
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], ebx
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x8066
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x8067
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x807e
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], ebx
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x4c9
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], ebx
call fcn.0044c5af
lea eax, [esp + 0x1c]
push eax
mov eax, edi
mov dword [esp + 0x20], 0x8004
call fcn.0044c5af
call fcn.0044a647
mov edi, esi
call fcn.0044b9af
lea edi, [esi + 0x104]
mov dword [esp + 0x1c], eax
call fcn.0042379b
xor edi, edi
inc edi
push edi
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.MainMsg
call fcn.0040518c
push esi
call fcn.0044bb14
push edi
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.Main
call fcn.0040518c
push esi
call fcn.0044bb14
push edi
push ebx
lea eax, [esp + 0x28]
push 0x1f
push eax
call fcn.00401181
push eax
call fcn.0052bb08
mov dword [esp + 0x50], ebx
push dword [eax]
lea ecx, [esp + 0x28]
call fcn.0040518c
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x20]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
cmp dword [esp + 0x40], 0x10
mov eax, dword [esp + 0x2c]
push 0x3f8
jae 0x44d256
lea eax, [esp + 0x30]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push eax
call fcn.0040518c
push edi
push 0x157
mov ecx, esi
call fcn.0044a698
push ebx
push 0x4cd
push ebx
push ebx
mov dword [esi + 0x1a8], eax
lea eax, [esp + 0x24]
push 0x68
push eax
call fcn.00401181
push eax
call fcn.0052bb08
sub esp, 0x1c
mov byte [esp + 0x74], 3
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x158
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
mov dword [esi + 0x1b0], eax
call fcn.00405172
push 0xe
push 0x804f
call fcn.00401181
lea eax, [esp + 0x1c]
mov ecx, 0x804f
push eax
call fcn.0052bc4f
cmp dword [esp + 0x24], ebx
je 0x44da1f
sub esp, 0x1c
mov byte [esp + 0x74], 4
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x15c
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 6
push 0x8050
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8050
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 5
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x15d
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 6
push 0x8051
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8051
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 6
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x15e
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 2
push 0x8064
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8064
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 7
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x15f
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 2
push 0x8065
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8065
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 8
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x160
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8017
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8017
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 9
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x161
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8012
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8012
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0xa
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x162
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8019
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8019
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0xb
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x163
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8018
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8018
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0xc
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x164
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 2
push 0x4c9
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x4c9
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0xd
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x165
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 2
push 0x5f2
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x5f2
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0xe
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x166
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8027
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8027
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0xf
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x167
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8023
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8023
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x10
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x168
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8043
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8043
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x11
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x169
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8004
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8004
call fcn.0052bc4f
mov byte [esp + 0x58], 0x12
mov eax, dword [eax]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x16a
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8003
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8003
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x13
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x16b
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8066
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8066
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x14
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x17e
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 8
push 0x8067
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8067
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x15
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x17f
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 8
push 0x8068
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8068
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x16
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x180
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8069
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8069
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x17
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x181
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x807e
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x807e
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x18
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x182
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x80d7
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x80d7
call fcn.0052bc4f
mov byte [esp + 0x58], 0x19
mov eax, dword [eax]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x184
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x40e
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x4a0
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x1a
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x172
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x411
push ebx
push ebx
lea eax, [esp + 0x24]
push 0x278f
push eax
call fcn.00401181
push eax
call fcn.0052bb08
sub esp, 0x1c
mov byte [esp + 0x74], 0x1b
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x187
jmp 0x44e0a5
sub esp, 0x1c
mov byte [esp + 0x74], 0x1c
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push 0x10
push 0x135
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 6
push 0x8050
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8050
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x1d
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 6
push 0x8051
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8051
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x1e
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 2
push 0x8064
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8064
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x1f
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 2
push 0x8065
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8065
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x20
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8017
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8017
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x21
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8012
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8012
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x22
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8019
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8019
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x23
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8018
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8018
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x24
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 2
push 0x4c9
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x4c9
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x25
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 2
push 0x5f2
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x5f2
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x26
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8027
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8027
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x27
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8023
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8023
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x28
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8043
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8043
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x29
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8004
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8004
call fcn.0052bc4f
mov byte [esp + 0x58], 0x2a
mov eax, dword [eax]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8003
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8003
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x2b
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8066
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8066
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x2c
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push 7
push 0x136
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 8
push 0x8067
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8067
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x2d
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 8
push 0x8068
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8068
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x2e
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x8069
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x8069
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x2f
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x807e
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x807e
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x30
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x808d
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x808d
call fcn.0052bc4f
mov byte [esp + 0x58], 0x31
mov eax, dword [eax]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x80d7
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x80d7
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x32
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push ecx
call fcn.0040cb83
add esp, 4
call fcn.0049b754
cmp eax, ebx
je 0x44e2e7
push 8
push 0x80b9
push ebx
push ebx
lea eax, [esp + 0x24]
push 0x9a
push eax
call fcn.00401181
push eax
call fcn.0052bb08
cmp dword [esp + 0x24], ebx
je 0x44e1bd
sub esp, 0x1c
mov byte [esp + 0x74], 0x33
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x185
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 8
push 0x80ba
push ebx
push ebx
lea eax, [esp + 0x24]
push 0xa2
push eax
call fcn.00401181
push eax
call fcn.0052bb08
sub esp, 0x1c
mov byte [esp + 0x74], 0x34
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x186
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push ebx
push 0x80dd
push ebx
push ebx
lea eax, [esp + 0x24]
push 0x93
push eax
call fcn.00401181
push eax
call fcn.0052bb08
sub esp, 0x1c
mov byte [esp + 0x74], 0x35
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x188
jmp 0x44e228
sub esp, 0x1c
mov byte [esp + 0x74], 0x36
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push 2
push 0x14d
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 8
push 0x80ba
push ebx
push ebx
lea eax, [esp + 0x24]
push 0xa2
push eax
call fcn.00401181
push eax
call fcn.0052bb08
sub esp, 0x1c
mov byte [esp + 0x74], 0x37
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push ebx
push ebx
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 0xa
push 0x80ed
push ebx
push ebx
lea eax, [esp + 0x24]
push 0x92
push eax
call fcn.00401181
push eax
call fcn.0052bb08
sub esp, 0x1c
mov byte [esp + 0x74], 0x38
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x159
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
mov dword [esi + 0x1b8], eax
call fcn.00405172
push 8
push 0x80ee
call fcn.00401181
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x80ee
call fcn.0052bc4f
sub esp, 0x1c
mov byte [esp + 0x74], 0x39
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x150
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 8
push 0x81af
push ebx
push ebx
lea eax, [esp + 0x24]
push 0x91
push eax
call fcn.00401181
push eax
call fcn.0052bb08
sub esp, 0x1c
mov byte [esp + 0x74], 0x3a
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.0040518c
push edi
push 0x15b
mov ecx, esi
call fcn.0044a698
mov byte [esp + 0x50], 2
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00405172
push 0x18
pop eax
push 0x19
pop ecx
push 0x20
pop edx
push ecx
push eax
push edx
push edx
pop eax
push eax
mov ecx, esi
call fcn.0044a8b7
push esi
call fcn.0044f2c3
push ebx
call fcn.0044efa5
push ebx
push edi
lea ecx, [esp + 0x2c]
call fcn.004055c2
mov ecx, dword [esp + 0x48]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.005c30b2
mov esp, ebp
pop ebp
ret