Function at 0x4af7f0
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d40f0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x140
mov eax, dword [0x644904]
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x140], esi
call dword [sym.imp.tengine.dll_public:_void___thiscall_tDataPool_::constructor_void_]
xor ebx, ebx
mov dword [esi], 0x5fe948
mov dword [ebp - 4], ebx
mov dword [esi + 0x34], ebx
mov dword [esi + 0x38], ebx
mov dword [esi + 0x3c], ebx
lea ecx, [esi + 0x40]
mov byte [ebp - 4], 1
call fcn.00598d30
lea ecx, [esi + 0x2a4]
mov byte [ebp - 4], 2
call fcn.00598d70
lea edi, [esi + 0x304]
mov ecx, edi
mov byte [ebp - 4], 3
call fcn.00467410
mov dword [edi + 4], eax
mov byte [eax + 0x15], 1
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
mov dword [edi + 8], ebx
mov dword [esi + 0x314], ebx
mov dword [esi + 0x318], ebx
mov dword [esi + 0x31c], ebx
mov dword [esi + 0x324], ebx
mov dword [esi + 0x328], ebx
mov dword [esi + 0x32c], ebx
mov dword [esi + 0x338], ebx
mov dword [esi + 0x33c], ebx
mov dword [esi + 0x340], ebx
mov dword [esi + 0x348], ebx
mov dword [esi + 0x34c], ebx
mov dword [esi + 0x350], ebx
mov dword [esi + 0x358], ebx
mov dword [esi + 0x35c], ebx
mov dword [esi + 0x360], ebx
mov dword [esi + 0x368], ebx
mov dword [esi + 0x36c], ebx
mov dword [esi + 0x370], ebx
mov dword [esi + 0x37c], ebx
mov dword [esi + 0x380], ebx
mov dword [esi + 0x384], ebx
lea edi, [esi + 0x388]
mov ecx, edi
mov byte [ebp - 4], 0xb
call fcn.0048ef30
mov dword [edi + 4], eax
mov byte [eax + 0x11], 1
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
mov dword [edi + 8], ebx
mov dword [esi + 0x3a4], ebx
mov dword [esi + 0x3a8], ebx
mov dword [esi + 0x3ac], ebx
mov dword [esi + 0x3bc], ebx
mov dword [esi + 0x3c0], ebx
mov dword [esi + 0x3c4], ebx
mov dword [esi + 0x3cc], ebx
mov dword [esi + 0x3d0], ebx
mov dword [esi + 0x3d4], ebx
mov dword [esi + 0x3dc], ebx
mov dword [esi + 0x3e0], ebx
mov dword [esi + 0x3e4], ebx
mov dword [esi + 0x3f0], ebx
mov dword [esi + 0x3f4], ebx
mov dword [esi + 0x3f8], ebx
mov dword [esi + 0x424], ebx
mov dword [esi + 0x428], ebx
mov dword [esi + 0x42c], ebx
mov dword [esi + 0x434], ebx
mov dword [esi + 0x438], ebx
mov dword [esi + 0x43c], ebx
mov dword [esi + 0x460], ebx
mov dword [esi + 0x464], ebx
mov dword [esi + 0x468], ebx
lea ecx, [esi + 0x47c]
mov byte [ebp - 4], 0x14
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov dword [esi + 0x4c4], ebx
mov dword [esi + 0x4c8], ebx
mov dword [esi + 0x4cc], ebx
mov dword [esi + 0x4d4], ebx
mov dword [esi + 0x4d8], ebx
mov dword [esi + 0x4dc], ebx
mov dword [esi + 0x4f0], ebx
mov dword [esi + 0x4f4], ebx
mov dword [esi + 0x4f8], ebx
mov dword [esi + 0x500], ebx
mov dword [esi + 0x504], ebx
mov dword [esi + 0x508], ebx
mov dword [esi + 0x514], ebx
mov dword [esi + 0x518], ebx
mov dword [esi + 0x51c], ebx
mov dword [esi + 0x524], ebx
mov dword [esi + 0x528], ebx
mov dword [esi + 0x52c], ebx
mov dword [esi + 0x55c], ebx
mov dword [esi + 0x560], ebx
mov dword [esi + 0x564], ebx
mov dword [esi + 0x56c], ebx
mov dword [esi + 0x570], ebx
mov dword [esi + 0x574], ebx
lea ecx, [esi + 0x578]
mov byte [ebp - 4], 0x1d
call fcn.004a77d0
lea ecx, [esi + 0x5d4]
mov byte [ebp - 4], 0x1e
call fcn.004a77d0
lea ecx, [esi + 0x630]
mov byte [ebp - 4], 0x1f
call fcn.004ab9d0
mov byte [ebp - 4], 0x20
lea ecx, [esi + 0x6dc]
call fcn.004ab9d0
mov dword [esi + 0x790], ebx
mov dword [esi + 0x794], ebx
xor eax, eax
mov dword [esi + 0x7a0], eax
mov dword [esi + 0x7a4], eax
mov dword [esi + 0x7a8], eax
mov dword [esi + 0x7b0], ebx
mov dword [esi + 0x7b4], ebx
mov dword [esi + 0x7b8], ebx
mov dword [esi + 0x7c8], ebx
mov dword [esi + 0x7cc], ebx
mov dword [esi + 0x7d0], ebx
lea ecx, [esi + 0x7d8]
mov byte [ebp - 4], 0x23
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esi + 0x7f4]
mov byte [ebp - 4], 0x24
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esi + 0x810]
mov byte [ebp - 4], 0x25
call fcn.004ade30
lea ecx, [esi + 0x8b0]
mov byte [ebp - 4], 0x26
call fcn.004ade30
push fcn.004951b0
push fcn.004994d0
push 0x400
push 0xb0
lea ecx, [esi + 0x978]
push ecx
mov byte [ebp - 4], 0x27
call fcn.005c8a47
push sub.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_
push fcn.00499460
push 0x10e
push 0x40
lea edx, [esi + 0x3f194]
push edx
mov byte [ebp - 4], 0x28
call fcn.005c8a47
lea ecx, [esi + 0x4351c]
mov byte [ebp - 4], 0x29
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esi + 0x43538]
mov byte [ebp - 4], 0x2a
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esi + 0x43554]
mov byte [ebp - 4], 0x2b
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esi + 0x43574]
mov byte [ebp - 4], 0x2c
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
push sub.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_
push fcn.00499460
push 0x10e
push 0x40
lea eax, [esi + 0x435a0]
push eax
mov byte [ebp - 4], 0x2d
call fcn.005c8a47
lea ecx, [esi + 0x47928]
mov byte [ebp - 4], 0x2e
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov byte [ebp - 4], 0x2f
lea ecx, [esi + 0x47944]
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esi + 0x47960]
mov byte [ebp - 4], 0x30
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esi + 0x47980]
mov byte [ebp - 4], 0x31
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esi + 0x479a8]
mov byte [ebp - 4], 0x32
call fcn.004993e0
push sub.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_
push fcn.00499380
push 0xa
push 0x20
lea ecx, [esi + 0x47a80]
push ecx
mov byte [ebp - 4], 0x33
call fcn.005c8a47
mov dword [esi + 0x47c3c], ebx
mov byte [esi + 0x47c39], bl
mov byte [esi + 0x47c38], bl
lea ecx, [esi + 0x47c5c]
mov byte [ebp - 4], 0x34
mov dword [esi + 0x47c40], ebx
mov dword [esi + 0x47c44], ebx
call fcn.004952b0
lea ecx, [esi + 0x47d40]
mov byte [ebp - 4], 0x35
call fcn.004952b0
lea ecx, [esi + 0x47e28]
mov dword [ebp - 0x13c], ecx
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], ebx
mov dword [ecx + 0x10], ebx
mov byte [ebp - 4], 0x37
call fcn.004aa850
mov dword [esi + 0x47e9c], ebx
mov dword [esi + 0x47ea0], ebx
mov dword [esi + 0x47ea4], ebx
lea ecx, [esi + 0x47ea8]
mov byte [ebp - 4], 0x39
call fcn.00432b00
mov dword [esi + 0x47f9c], ebx
mov dword [esi + 0x47fa0], ebx
mov dword [esi + 0x47fa4], ebx
lea edi, [esi + 0x47ff0]
mov ecx, edi
mov byte [ebp - 4], 0x3b
mov dword [esi + 0x47fd8], ebx
mov dword [esi + 0x47fdc], ebx
mov dword [esi + 0x47fe0], ebx
mov dword [esi + 0x47fe4], ebx
mov dword [esi + 0x47fe8], ebx
call fcn.00467410
mov dword [edi + 4], eax
mov byte [eax + 0x15], 1
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
mov dword [edi + 8], ebx
mov dword [esi + 0x4909c], ebx
mov dword [esi + 0x490a0], ebx
mov dword [esi + 0x490a4], ebx
mov byte [ebp - 4], 0x3d
push fcn.0042f520
push 0x5b8c70
push 2
push 0x1b8
lea edx, [esi + 0x490ac]
push edx
call fcn.005c8a47
push fcn.0042f520
push 0x5b8c70
push 2
push 0x1b8
lea eax, [esi + 0x49420]
push eax
mov byte [ebp - 4], 0x3e
call fcn.005c8a47
push fcn.0042f520
push 0x5b8c70
push 2
push 0x1b8
lea ecx, [esi + 0x49944]
push ecx
mov byte [ebp - 4], 0x3f
call fcn.005c8a47
lea ecx, [esi + 0x49cb4]
mov byte [ebp - 4], 0x40
call fcn.00494e20
lea ecx, [esi + 0x49e1c]
mov byte [ebp - 4], 0x41
call fcn.00494e20
lea ecx, [esi + 0x49f90]
mov byte [ebp - 4], 0x42
call fcn.0055e8a0
lea ecx, [esi + 0x4a5e8]
mov byte [ebp - 4], 0x43
call fcn.00495400
lea ecx, [esi + 0x4a898]
mov byte [ebp - 4], 0x44
call fcn.004a7930
lea ecx, [esi + 0x4a914]
mov byte [ebp - 4], 0x45
call fcn.004a7930
lea ecx, [esi + 0x4a990]
mov byte [ebp - 4], 0x46
call fcn.004a7930
mov dword [esi + 0x4aa10], ebx
mov dword [esi + 0x4aa14], ebx
mov dword [esi + 0x4aa18], ebx
mov dword [esi + 0x4aa20], ebx
mov dword [esi + 0x4aa24], ebx
mov dword [esi + 0x4aa28], ebx
mov dword [esi + 0x4aa40], ebx
mov dword [esi + 0x4aa44], ebx
mov dword [esi + 0x4aa48], ebx
mov dword [esi + 0x4aa50], ebx
mov dword [esi + 0x4aa54], ebx
mov dword [esi + 0x4aa58], ebx
mov dword [esi + 0x4aa60], ebx
mov dword [esi + 0x4aa64], ebx
mov dword [esi + 0x4aa68], ebx
mov dword [esi + 0x4aa78], ebx
mov dword [esi + 0x4aa7c], ebx
mov dword [esi + 0x4aa80], ebx
mov dword [esi + 0x4aa88], ebx
mov dword [esi + 0x4aa8c], ebx
mov dword [esi + 0x4aa90], ebx
mov dword [esi + 0x4aa98], ebx
mov dword [esi + 0x4aa9c], ebx
mov dword [esi + 0x4aaa0], ebx
mov dword [esi + 0x4aaa8], ebx
mov dword [esi + 0x4aaac], ebx
mov dword [esi + 0x4aab0], ebx
mov dword [esi + 0x4aab8], ebx
mov dword [esi + 0x4aabc], ebx
mov dword [esi + 0x4aac0], ebx
mov dword [esi + 0x4aac8], ebx
mov dword [esi + 0x4aacc], ebx
mov dword [esi + 0x4aad0], ebx
mov dword [esi + 0x4aad8], ebx
mov dword [esi + 0x4aadc], ebx
mov dword [esi + 0x4aae0], ebx
lea edi, [esi + 0x4aae4]
mov ecx, edi
mov byte [ebp - 4], 0x53
call fcn.0049a1b0
mov dword [edi + 4], eax
mov byte [eax + 0x21], 1
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
mov dword [edi + 8], ebx
mov dword [esi + 0x4aaf4], ebx
mov dword [esi + 0x4aaf8], ebx
mov dword [esi + 0x4aafc], ebx
push 1
lea ecx, [esi + 0x4ab04]
mov byte [ebp - 4], 0x55
call fcn.00486470
push 1
lea ecx, [esi + 0x4ab34]
mov byte [ebp - 4], 0x56
mov dword [esi + 0x4ab30], ebx
call fcn.00564550
lea ecx, [esi + 0x4ab64]
mov byte [ebp - 4], 0x57
mov dword [esi + 0x4ab60], ebx
call fcn.00406770
push fcn.004c99a0
push 0x4954f0
push 0x400
push 0x20
lea edx, [esi + 0x4ab90]
push edx
mov byte [ebp - 4], 0x58
mov dword [esi + 0x4ab8c], ebx
call fcn.005c8a47
sub esp, 0xc
xor eax, eax
mov edx, esp
mov ecx, eax
mov dword [edx], eax
or edi, 0xffffffff
mov dword [edx + 4], ecx
mov dword [esi + 0x788], edi
mov dword [0x645ae0], esi
push 0xff
lea ecx, [esi + 0x310]
mov byte [ebp - 4], 0x59
mov dword [esi + 0x49f84], edi
mov dword [edx + 8], eax
call fcn.004a62e0
xor eax, eax
sub esp, 0xc
mov edx, esp
mov ecx, eax
mov dword [edx], eax
mov dword [edx + 4], ecx
push 0x9f6
lea ecx, [esi + 0x320]
mov dword [edx + 8], eax
call fcn.004a62e0
push ebx
push 0x14
lea ecx, [esi + 0x334]
call fcn.004a3c80
push ebx
push 0x13
lea ecx, [esi + 0x344]
call fcn.004a3d10
push ebx
push 0x13
lea ecx, [esi + 0x354]
call fcn.004a3d10
push ebx
push 0x64
lea ecx, [esi + 0x378]
call fcn.004a3d10
xor eax, eax
push eax
push eax
push 0x64
lea ecx, [esi + 0x30]
call fcn.004a6270
push ebx
push 0xa
lea ecx, [esi + 0x3a0]
call fcn.004a3d10
push ebx
push 4
lea ecx, [esi + 0x364]
call fcn.004a3d10
push ebx
push 0x60
lea ecx, [esi + 0x3b8]
mov dword [esi + 0x3b0], ebx
mov dword [esi + 0x3e8], 1
call fcn.004a3d10
push ebx
push 5
lea ecx, [esi + 0x3c8]
call fcn.004a3d10
push ebx
push 5
lea ecx, [esi + 0x3d8]
call fcn.004a3e00
push ebx
push 0x60
lea ecx, [esi + 0x3ec]
call fcn.004a3e00
push ebx
push 0x60
lea ecx, [esi + 0x420]
call fcn.004a3e00
push ebx
push 0x60
lea ecx, [esi + 0x430]
call fcn.004a3e00
mov eax, 0x3f800000
push ebx
push 0x3c
lea ecx, [esi + 0x45c]
mov dword [esi + 0x408], edi
mov dword [esi + 0x404], edi
mov dword [esi + 0x414], eax
mov dword [esi + 0x418], eax
mov dword [esi + 0x41c], eax
mov dword [esi + 0x46c], ebx
call fcn.004a3d10
lea ecx, [ebp - 0x138]
call fcn.00432b00
mov byte [ebp - 4], 0x5a
sub esp, 0xf0
lea eax, [ebp - 0x138]
mov ecx, esp
mov dword [ebp - 0x13c], esp
push eax
call fcn.004a7be0
push 0xa
lea ecx, [esi + 0x47e98]
call fcn.004ad3f0
sub esp, 0xf0
lea edx, [ebp - 0x138]
mov ecx, esp
mov dword [ebp - 0x13c], esp
push edx
call fcn.004a7be0
push 0xa
lea ecx, [esi + 0x47f98]
call fcn.004ad3f0
push 0x1e8
call fcn.005c8833
add esp, 4
mov dword [ebp - 0x13c], eax
cmp eax, ebx
mov byte [ebp - 4], 0x5b
je 0x4b0135
mov ecx, eax
call fcn.004d8f40
jmp 0x4b0137
xor eax, eax
push 0x30
mov byte [ebp - 4], 0x5a
mov dword [esi + 0x4a4], eax
call fcn.005c8833
add esp, 4
mov dword [ebp - 0x13c], eax
cmp eax, ebx
mov byte [ebp - 4], 0x5c
je 0x4b0162
mov ecx, eax
call fcn.004d9030
jmp 0x4b0164
xor eax, eax
push 0x24
mov byte [ebp - 4], 0x5a
mov dword [esi + 0x4a8], eax
call fcn.005c8833
add esp, 4
mov dword [ebp - 0x13c], eax
cmp eax, ebx
mov byte [ebp - 4], 0x5d
je 0x4b018f
mov ecx, eax
call fcn.0051e310
jmp 0x4b0191
xor eax, eax
push 0xc8
mov byte [ebp - 4], 0x5a
mov dword [esi + 0x4ac], eax
call fcn.005c8833
add esp, 4
mov dword [ebp - 0x13c], eax
cmp eax, ebx
mov byte [ebp - 4], 0x5e
je 0x4b01c5
mov ecx, eax
call fcn.0059a280
mov eax, dword [ebp - 0x13c]
jmp 0x4b01c7
xor eax, eax
mov dword [esi + 0x4b0], eax
push ebx
push 5
lea ecx, [esi + 0x4c0]
mov byte [ebp - 4], 0x5a
mov dword [esi + 0x4b8], ebx
mov dword [esi + 0x4b4], ebx
mov dword [esi + 0x4bc], ebx
call fcn.004a3d10
push ebx
push 5
lea ecx, [esi + 0x4d0]
call fcn.004a3d10
push ebx
push 5
lea ecx, [esi + 0x4ec]
mov dword [esi + 0x4e4], ebx
mov dword [esi + 0x4e0], ebx
mov dword [esi + 0x4e8], ebx
call fcn.004a3d10
push ebx
push 5
lea ecx, [esi + 0x4fc]
call fcn.004a3d10
push ebx
push 0xa
lea ecx, [esi + 0x510]
mov dword [esi + 0x50c], ebx
call fcn.004a3c80
push ebx
push 0xa
lea ecx, [esi + 0x520]
call fcn.004a3e00
push ebx
push 3
lea ecx, [esi + 0x558]
mov word [esi + 0x530], bx
mov word [esi + 0x532], bx
mov dword [esi + 0x534], ebx
call fcn.004a3d10
push edi
push 3
lea ecx, [esi + 0x568]
call fcn.004a3c80
lea ecx, [esi + 0x630]
call fcn.004aafa0
lea ecx, [esi + 0x6dc]
call fcn.004aafa0
sub esp, 0xac
mov ecx, esp
mov dword [ebp - 0x13c], esp
call fcn.00499550
push 0x100
lea ecx, [esi + 0x7ac]
call fcn.004a9f90
push ebx
push 0x100
lea ecx, [esi + 0x7c4]
call fcn.004a3c80
lea ecx, [esi + 0x2a4]
mov dword [esi + 0x954], ebx
mov dword [esi + 0x47ffc], ebx
call fcn.00598c00
lea ecx, [esi + 0x40]
call fcn.00598a40
push 0x5eb0c0
lea ecx, [esi + 0x4351c]
mov dword [esi + 0x7c0], ebx
mov dword [esi + 0x7d4], ebx
mov dword [esi + 0x2c978], ebx
mov dword [esi + 0x2c97c], ebx
mov dword [esi + 0x2c980], ebx
mov dword [esi + 0x43518], ebx
mov byte [esi + 0x43571], bl
mov dword [esi + 0x43590], ebx
mov dword [esi + 0x43594], ebx
mov dword [esi + 0x43598], ebx
mov dword [esi + 0x374], edi
call dword [sym.imp.msvcp71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_char_const__]
mov ecx, 0xd
xor eax, eax
lea edi, [esi + 0x47e3c]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
sub esp, 0x10
mov ecx, eax
mov edx, esp
mov dword [edx], ecx
mov dword [edx + 4], eax
mov dword [edx + 8], ecx
push ebx
lea ecx, [esi + 0x49098]
mov dword [edx + 0xc], eax
call fcn.004a6ab0
lea ecx, [esi + 0x810]
call fcn.0049c9d0
lea ecx, [esi + 0x8b0]
call fcn.0049c9d0
mov dword [esi + 0x950], ebx
or edi, 0xffffffff
mov dword [esi + 0x95c], edi
mov dword [esi + 0x960], edi
mov dword [esi + 0x964], edi
mov dword [esi + 0x968], edi
mov dword [esi + 0x53c], ebx
mov dword [esi + 0x538], ebx
mov dword [esi + 0x540], ebx
mov dword [esi + 0x544], ebx
mov dword [esi + 0x54c], ebx
mov dword [esi + 0x548], ebx
mov dword [esi + 0x550], ebx
mov dword [esi + 0x554], ebx
push 0x5feed0
lea ecx, [esi + 0x47c]
mov dword [esi + 0x470], ebx
mov dword [esi + 0x478], ebx
call dword [sym.imp.msvcp71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_char_const__]
push 0x10
mov byte [esi + 0x498], bl
mov dword [esi + 0x49c], ebx
mov dword [esi + 0x4a0], ebx
mov dword [esi + 0x79c], ebx
mov byte [esi + 0x396], 0x14
mov byte [esi + 0x395], 0x14
mov byte [esi + 0x394], 0x14
mov dword [esi + 0x4a5d0], edi
mov dword [esi + 0x4a5d4], ebx
mov dword [esi + 0x4a5d8], 1
call fcn.005c8833
add esp, 4
cmp eax, ebx
je 0x4b044c
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
jmp 0x4b044e
xor eax, eax
push 0xc80
mov byte [ebp - 4], 0x5a
mov dword [esi + 0x4a59c], eax
call fcn.005c8833
add esp, 4
mov dword [ebp - 0x13c], eax
cmp eax, ebx
mov byte [ebp - 4], 0x60
je 0x4b047c
mov ecx, eax
call fcn.00435080
jmp 0x4b047e
xor eax, eax
mov dword [esi + 0x4a5a0], eax
mov dword [esi + 0x39c], ebx
mov dword [esi + 0x4a5bc], ebx
mov dword [esi + 0x4a5c0], 0x3a98
mov dword [esi + 0x4a5c4], 0x7530
mov dword [esi + 0x4a5c8], ebx
mov dword [esi + 0x4a5cc], edi
mov eax, dword [0x645ae0]
mov dword [eax + 0x47c30], ebx
mov ecx, dword [0x645ae0]
mov dword [ecx + 0x47c34], edi
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x5a
call fcn.00494f80
mov edx, dword [ebp - 0x48]
sub esp, 0x38
mov edi, esp
mov dword [edi], edx
mov eax, dword [ebp - 0x44]
mov dword [edi + 4], eax
mov ecx, dword [ebp - 0x40]
mov dword [edi + 8], ecx
mov edx, dword [ebp - 0x3c]
lea eax, [ebp - 0x38]
mov dword [ebp - 0x13c], esp
push eax
lea ecx, [edi + 0x10]
mov byte [ebp - 4], 0x61
mov dword [edi + 0xc], edx
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, dword [ebp - 0x1c]
mov dword [edi + 0x2c], ecx
mov edx, dword [ebp - 0x18]
mov dword [edi + 0x30], edx
mov eax, dword [ebp - 0x14]
push 0x14
lea ecx, [esi + 0x4aa4c]
mov dword [edi + 0x34], eax
call fcn.004a9ec0
mov ecx, dword [ebp - 0x48]
sub esp, 0x38
mov edi, esp
mov dword [edi], ecx
mov edx, dword [ebp - 0x44]
mov dword [edi + 4], edx
mov eax, dword [ebp - 0x40]
mov dword [edi + 8], eax
mov ecx, dword [ebp - 0x3c]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x13c], esp
mov dword [edi + 0xc], ecx
push edx
lea ecx, [edi + 0x10]
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x2c], eax
mov ecx, dword [ebp - 0x18]
mov dword [edi + 0x30], ecx
mov edx, dword [ebp - 0x14]
push 0x14
lea ecx, [esi + 0x4aa5c]
mov dword [edi + 0x34], edx
call fcn.004a9ec0
lea ecx, [esi + 0x4a898]
mov dword [esi + 0x4aa70], 1
call fcn.0049ca90
lea ecx, [esi + 0x4a914]
call fcn.0049ca90
mov dword [esi + 0x7bc], 0xffffffff
mov eax, dword [esi + 0x4aa78]
cmp eax, ebx
je 0x4b05b0
push eax
call sub.msvcr71.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esi + 0x4aa78], ebx
mov dword [esi + 0x4aa7c], ebx
mov dword [esi + 0x4aa80], ebx
mov eax, dword [esi + 0x4aab8]
cmp eax, ebx
je 0x4b05d5
push eax
call sub.msvcr71.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esi + 0x4aab8], ebx
mov dword [esi + 0x4aabc], ebx
mov dword [esi + 0x4aac0], ebx
mov eax, dword [esi + 0x4aae8]
mov ecx, dword [eax + 4]
lea edi, [esi + 0x4aae4]
push ecx
mov ecx, edi
call fcn.004ab430
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [edi + 8], ebx
mov dword [eax], eax
mov edi, dword [edi + 4]
lea ecx, [esi + 0x4aad4]
mov dword [edi + 8], edi
call fcn.004aa060
xor eax, eax
xor edx, edx
mov ecx, 0x64
lea edi, [esi + 0x497a0]
rep stosd dword es:[edi], eax
mov dword [esi + 0x49790], ebx
mov dword [esi + 0x4979c], ebx
lea eax, [esi + 0x49930]
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [esi + 0x49798], ebx
mov dword [esi + 0x49940], ebx
mov dword [esi + 0x2c984], ebx
xor eax, eax
mov ecx, 0x4800
lea edi, [esi + 0x2c988]
rep stosd dword es:[edi], eax
mov ecx, 0x68
lea edi, [esi + 0x3e988]
rep stosd dword es:[edi], eax
mov dword [esi + 0x3eb28], ebx
mov ecx, 0x19a
lea edi, [esi + 0x3eb2c]
rep stosd dword es:[edi], eax
xor ecx, ecx
lea edx, [esi + 0x49dcc]
mov dword [edx], ecx
mov dword [edx + 4], ecx
mov dword [edx + 8], ecx
mov dword [edx + 0xc], ecx
mov dword [edx + 0x10], ecx
mov dword [edx + 0x14], ecx
mov dword [edx + 0x18], ecx
mov dword [edx + 0x1c], ecx
mov dword [edx + 0x20], ecx
mov dword [edx + 0x24], ecx
lea ecx, [esi + 0x49f34]
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], eax
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], eax
lea ecx, [ebp - 0x38]
mov dword [esi + 0x4aa30], ebx
mov dword [esi + 0x4359c], ebx
mov byte [ebp - 4], 0x5a
call dword [sym.imp.msvcp71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x59
call fcn.00468340
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
mov eax, esi
call fcn.005c8895
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret