Function at 0x1018e900
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x101b2807
mov eax, dword fs:[0]
push eax
sub esp, 0x15c
mov eax, dword [0x10415990]
xor eax, esp
mov dword [esp + 0x158], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10415990]
xor eax, esp
push eax
lea eax, [esp + 0x170]
mov dword fs:[0], eax
mov dword [esp + 0x8c], ecx
mov eax, dword [esp + 0x180]
mov ebp, dword [esp + 0x184]
mov esi, dword [esp + 0x188]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x18c]
add eax, 4
mov dword [esp + 0x28], eax
mov ecx, str.IVW_FILLER
xor edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1018e990
test dl, dl
je 0x1018e98c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1018e990
add eax, 2
add ecx, 2
test dl, dl
jne 0x1018e970
xor eax, eax
jmp 0x1018e995
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
jne 0x1018ec3e
mov ebx, ebp
mov ecx, 0x10291360
mov eax, ebp
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1018e9c6
test dl, dl
je 0x1018e9c2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1018e9c6
add eax, 2
add ecx, 2
test dl, dl
jne 0x1018e9a6
xor eax, eax
jmp 0x1018e9cb
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x1018ead7
push 0x1016baa0
push 2
push 0xd4
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], edi
call fcn.101697a0
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x18]
push str._is_InValid
push ecx
push str.__Res
add eax, 0xbc0
push str.ResLoader_Filler_KeyWord::load_res
push eax
mov dword [esp + 0x18c], edi
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
or esi, 0xffffffff
add esp, 8
lea ecx, [esp + 0x14]
mov dword [esp + 0x178], esi
call fcn.1016cac0
push 0x1016baa0
push 2
push 0xd4
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], edi
call fcn.101697a0
mov dword [esp + 0x178], 1
mov eax, dword [esp + 0x18]
push 0xea67
add eax, 0xbc0
push str.Error:_ret
push eax
call fcn.10167060
add esp, 8
mov ecx, eax
call fcn.10167af0
lea ecx, [esp + 0x14]
mov dword [esp + 0x178], esi
call fcn.1016cac0
mov eax, 0xea67
mov ecx, dword [esp + 0x170]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x158]
xor ecx, esp
call fcn.1015eea7
add esp, 0x168
ret 0x18
mov eax, ebx
add eax, 0x54
lea ebp, [esi - 0x54]
push ebp
push eax
lea ecx, [esp + 0xe0]
mov dword [esp + 0x24], eax
call fcn.10185210
cmp byte [esp + 0xd8], 0
je 0x1018eb4c
xor esi, esi
lea edi, [esp + 0x148]
jmp 0x1018eb10
movzx edx, byte [esp + esi + 0x134]
push edx
push 0x10378630
push edi
call sub.MSVCR100.dll_sprintf
inc esi
add esp, 0xc
add edi, 2
cmp esi, 0x10
jl 0x1018eb10
push 0x20
lea eax, [esp + 0x14c]
push eax
lea ecx, [esp + 0xe0]
push ecx
call sub.MSVCR100.dll_memcpy
add esp, 0xc
xor edi, edi
mov byte [esp + 0xf8], 0
lea ecx, [ebx + 0x14]
lea eax, [esp + 0xd8]
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1018eb80
test dl, dl
je 0x1018eb7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1018eb80
add eax, 2
add ecx, 2
test dl, dl
jne 0x1018eb60
xor eax, eax
jmp 0x1018eb85
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x1018ec38
push 0x1016baa0
push 2
push 0xdb
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], edi
call fcn.101697a0
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x18]
push str._is_Destroyed
push edx
push str.__Res
add eax, 0xbc0
push str.ResLoader_Filler_KeyWord::load_res
push eax
mov dword [esp + 0x18c], 2
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
or esi, 0xffffffff
add esp, 8
lea ecx, [esp + 0x14]
mov dword [esp + 0x178], esi
call fcn.1016cac0
push 0x1016baa0
push 2
push 0xdb
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], edi
call fcn.101697a0
mov dword [esp + 0x178], 3
jmp 0x1018ea75
mov esi, ebp
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x50]
mov ecx, dword [eax]
push edi
push 0x104166c0
push 0x10416608
push edi
push ecx
call sub.MSVCR100.dll___RTDynamicCast
add esp, 0x14
mov dword [esp + 0x50], eax
cmp eax, edi
jne 0x1018ed2c
push 0x1016baa0
push 2
push 0xdf
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], edi
call fcn.101697a0
mov eax, dword [esp + 0x18]
push str._resource_link_should_not_be_NULL
add eax, 0xbc0
push str.ResLoader_Filler_KeyWord::load_res
push eax
mov dword [esp + 0x184], 4
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
or esi, 0xffffffff
add esp, 8
lea ecx, [esp + 0x14]
mov dword [esp + 0x178], esi
call fcn.1016cac0
push 0x1016baa0
push 2
push 0xdf
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], edi
call fcn.101697a0
mov eax, dword [esp + 0x18]
push 0xea65
add eax, 0xbc0
push str.Error:_ret
push eax
mov dword [esp + 0x184], 5
call fcn.10167060
add esp, 8
mov ecx, eax
call fcn.10167af0
lea ecx, [esp + 0x14]
mov dword [esp + 0x178], esi
call fcn.1016cac0
mov eax, 0xea65
jmp 0x1018eaad
lea edx, [esi + 1]
push edx
call sub.MSVCR100.dll_void____cdecl_operator_new___unsigned_int_
mov ebx, eax
add esp, 4
mov dword [esp + 0x78], ebx
mov ecx, dword [esp + 0x8c]
push esi
push ebx
push ebp
mov dword [esp + 0x184], 6
mov byte [esi + ebx], 0
call fcn.10183f60
mov dword [esp + 0x90], edi
mov dword [esp + 0x94], edi
mov dword [esp + 0x98], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], edi
push 0x30
mov byte [esp + 0x17c], 8
mov dword [esp + 0x38], edi
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
cmp eax, edi
je 0x1018fcc3
mov dword [esp + 0x30], eax
mov dword [eax], eax
mov eax, dword [esp + 0x30]
mov dword [eax + 4], eax
mov eax, dword [esp + 0x30]
mov dword [eax + 8], eax
mov eax, dword [esp + 0x30]
mov byte [eax + 0x2c], 1
mov ecx, dword [esp + 0x30]
mov byte [ecx + 0x2d], 1
mov dword [esp + 0x64], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], edi
mov eax, ebx
mov byte [esp + 0x178], 0xa
mov dword [esp + 0xc4], 0xf
mov dword [esp + 0xc0], edi
mov byte [esp + 0xb0], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x1018edf2
sub eax, ecx
push eax
push ebx
lea ecx, [esp + 0xb8]
call fcn.10048340
push 0x10377b1c
lea edx, [esp + 0x68]
push edx
lea eax, [esp + 0xb8]
push eax
mov byte [esp + 0x184], 0xb
call fcn.1018d2e0
add esp, 0xc
cmp dword [esp + 0xc4], 0x10
mov byte [esp + 0x178], 0xa
jb 0x1018ee4d
mov ecx, dword [esp + 0xb0]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ecx, dword [esp + 0x68]
mov esi, dword [esp + 0x64]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebp, edx
shr ebp, 0x1f
add ebp, edx
mov dword [esp + 0x14], ebp
je 0x1018ee88
mov edi, ebp
xor ebx, ebx
push ebx
push 0x20
push esi
call fcn.1016af60
add esp, 0xc
add esi, 0x1c
dec edi
jne 0x1018ee74
jmp 0x1018ee8a
xor ebx, ebx
push ebp
lea ecx, [esp + 0x94]
call fcn.10187be0
push ebp
lea ecx, [esp + 0x58]
call fcn.1016d880
push 1
mov edi, 0xf
push 0x10377e30
lea ecx, [esp + 0xb8]
mov dword [esp + 0x54], ebx
mov dword [esp + 0xcc], edi
mov dword [esp + 0xc8], ebx
mov byte [esp + 0xb8], 0
call fcn.10048340
lea edx, [esp + 0x4c]
push edx
lea eax, [esp + 0xb4]
push eax
lea ecx, [esp + 0x150]
push ecx
mov byte [esp + 0x184], 0xc
call fcn.1018ad60
add esp, 0xc
push ebx
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x180], 0xd
call fcn.1017b960
push eax
lea edx, [esp + 0x28]
push edx
lea ecx, [esp + 0x38]
call fcn.1018a690
mov esi, 0x10
cmp dword [esp + 0x15c], esi
jb 0x1018ef38
mov eax, dword [esp + 0x148]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esp + 0x15c], edi
mov dword [esp + 0x158], ebx
mov byte [esp + 0x148], 0
mov byte [esp + 0x178], 0xa
cmp dword [esp + 0xc4], esi
jb 0x1018ef6f
mov ecx, dword [esp + 0xb0]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
push 1
push 0x10377e30
lea ecx, [esp + 0xb8]
mov dword [esp + 0xcc], edi
mov dword [esp + 0xc8], ebx
mov byte [esp + 0xb8], 0
call fcn.10048340
lea edx, [esp + 0xb0]
push edx
lea ecx, [esp + 0x58]
mov byte [esp + 0x17c], 0xe
call fcn.1016daf0
mov byte [esp + 0x178], 0xa
cmp dword [esp + 0xc4], esi
jb 0x1018efd2
mov eax, dword [esp + 0xb0]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp ebp, ebx
mov ebp, dword [esp + 0x28]
mov dword [esp + 0x4c], ebx
jbe 0x1018f5fd
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x74], ecx
lea ebx, [ebx]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov edx, dword [esp + 0x74]
push 0xffffffffffffffff
push ebx
push edx
lea ecx, [esp + 0xbc]
mov byte [esp + 0x184], 0xf
mov dword [esp + 0xd0], 0xf
mov dword [esp + 0xcc], ebx
mov byte [esp + 0xbc], 0
call fcn.100481c0
push 0x10377e20
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0xb8]
push ecx
mov byte [esp + 0x184], 0x10
call fcn.1018d2e0
add esp, 0xc
mov ecx, str.IVW_KEYWORD
mov eax, ebp
jmp 0x1018f060
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1018f080
test dl, dl
je 0x1018f07c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1018f080
add eax, 2
add ecx, 2
test dl, dl
jne 0x1018f060
xor eax, eax
jmp 0x1018f085
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x1018f0b9
mov ecx, str.IVW_SPEECH
mov eax, ebp
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1018f0b0
test dl, dl
je 0x1018f0ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1018f0b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x1018f090
xor eax, eax
jmp 0x1018f0b5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x1018f0d5
mov ecx, dword [esp + 0x8c]
lea edx, [esp + 0xb0]
push edx
call fcn.1018d560
cmp al, 1
jne 0x1018f62e
mov edi, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
mov ecx, edi
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x1c], eax
cmp eax, 1
jb 0x1018f2c2
xor esi, esi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], esi
mov ecx, dword [esp + 0x3c]
push 0x101b5c64
lea eax, [esp + 0x80]
push eax
push ecx
mov byte [esp + 0x184], 0x16
call fcn.1018d420
mov ebx, dword [esp + 0x8c]
mov ecx, ebx
sub ecx, dword [esp + 0x88]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebp, edx
shr ebp, 0x1f
add esp, 0xc
add ebp, edx
je 0x1018f18a
mov edi, dword [esp + 0x7c]
cmp dword [edi + 0x14], 0x10
jb 0x1018f16a
mov eax, dword [edi]
jmp 0x1018f16c
mov eax, edi
push eax
call sub.MSVCR100.dll_atoi
mov word [esp + esi*2 + 0xd0], ax
inc esi
add esp, 4
add edi, 0x1c
cmp esi, ebp
jb 0x1018f160
cmp esi, 2
jae 0x1018f1ae
or eax, 0xffffffff
movzx edx, ax
mov eax, edx
shl edx, 0x10
mov ecx, 2
sub ecx, esi
or eax, edx
shr ecx, 1
lea edi, [esp + esi*2 + 0xcc]
rep stosd dword es:[edi], eax
adc ecx, ecx
rep stosw word es:[edi], ax
mov esi, dword [esp + 0x7c]
xor eax, eax
mov word [esp + 0xd0], bp
mov byte [esp + 0x178], 0x10
cmp esi, eax
je 0x1018f206
cmp esi, ebx
je 0x1018f1f7
lea esp, [esp]
cmp dword [esi + 0x14], 0x10
jb 0x1018f1e3
mov eax, dword [esi]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor eax, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], eax
mov byte [esi], 0
add esi, 0x1c
cmp esi, ebx
jne 0x1018f1d0
mov eax, dword [esp + 0x7c]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor eax, eax
xor edx, edx
cmp dword [esp + 0x1c], 2
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov word [esp + 0xd4], dx
jb 0x1018f249
mov eax, dword [esp + 0x3c]
add eax, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x1018f238
mov eax, dword [eax]
push eax
call sub.MSVCR100.dll_atoi
add esp, 4
mov word [esp + 0xd4], ax
xor eax, eax
cmp dword [esp + 0x1c], 3
mov word [esp + 0xd2], ax
jb 0x1018f541
mov ebx, dword [esp + 0x3c]
add ebx, 0x38
push ebx
lea ecx, [esp + 0x30]
call fcn.10186c90
mov dword [esp + 0xa0], eax
cmp eax, dword [esp + 0x30]
je 0x1018f3f0
mov ecx, dword [eax + 0x1c]
add eax, 0xc
mov esi, 0x10
mov dword [esp + 0xa4], ecx
cmp dword [eax + 0x14], esi
jb 0x1018f299
mov eax, dword [eax]
mov ebp, dword [ebx + 0x10]
mov edx, ebp
mov dword [esp + 0x1c], ebp
cmp edx, ebp
jae 0x1018f2aa
mov dword [esp + 0x1c], edx
mov edx, ebp
cmp ebp, ecx
jb 0x1018f2b2
mov edx, ecx
cmp dword [ebx + 0x14], esi
jb 0x1018f34d
mov esi, dword [ebx]
jmp 0x1018f34f
push ebx
lea ecx, [esp + 0xb4]
push 0x20
push ecx
call fcn.1016af60
add esp, 0xc
cmp dword [esp + 0xc0], ebx
jne 0x1018f8e4
cmp dword [esp + 0xc4], 0x10
jb 0x1018f2fc
mov edx, dword [esp + 0xb0]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esp + 0xc4], 0xf
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], 0
mov byte [esp + 0x178], 0xa
cmp esi, ebx
je 0x1018f33c
mov eax, dword [esp + 0x14]
push eax
lea ecx, [esp + 0x4c]
push ecx
push edi
push esi
call fcn.1016ada0
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 0x14
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
jmp 0x1018f5e5
mov esi, ebx
mov ecx, eax
cmp edx, 4
jb 0x1018f36a
mov eax, dword [esi]
cmp eax, dword [ecx]
jne 0x1018f372
sub edx, 4
add ecx, 4
add esi, 4
cmp edx, 4
jae 0x1018f356
xor edi, edi
cmp edx, edi
je 0x1018f3bf
jmp 0x1018f374
xor edi, edi
movzx eax, byte [esi]
movzx ebp, byte [ecx]
sub eax, ebp
jne 0x1018f3af
cmp edx, 1
jbe 0x1018f3bb
movzx eax, byte [esi + 1]
movzx ebp, byte [ecx + 1]
sub eax, ebp
jne 0x1018f3af
cmp edx, 2
jbe 0x1018f3bb
movzx eax, byte [esi + 2]
movzx ebp, byte [ecx + 2]
sub eax, ebp
jne 0x1018f3af
cmp edx, 3
jbe 0x1018f3bb
movzx eax, byte [esi + 3]
movzx ecx, byte [ecx + 3]
sub eax, ecx
mov ebp, dword [esp + 0x1c]
sar eax, 0x1f
or eax, 1
jmp 0x1018f3c1
mov ebp, dword [esp + 0x1c]
xor eax, eax
cmp eax, edi
jne 0x1018f3e0
mov eax, dword [esp + 0xa4]
cmp ebp, eax
jae 0x1018f3d5
or eax, 0xffffffff
jmp 0x1018f3de
xor edx, edx
cmp ebp, eax
setne dl
mov eax, edx
cmp eax, edi
setl al
test al, al
jne 0x1018f3f2
lea eax, [esp + 0xa0]
jmp 0x1018f3fe
xor edi, edi
mov eax, dword [esp + 0x30]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
mov eax, dword [eax]
cmp eax, dword [esp + 0x30]
jne 0x1018f533
mov ecx, dword [esp + 0x58]
sub ecx, dword [esp + 0x54]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
push 0xffffffffffffffff
mov esi, edx
push edi
shr esi, 0x1f
push ebx
lea ecx, [esp + 0x154]
add esi, edx
mov dword [esp + 0x168], 0xf
mov dword [esp + 0x164], edi
mov byte [esp + 0x154], 0
call fcn.100481c0
mov dword [esp + 0x164], esi
push edi
lea ecx, [esp + 0x14c]
push ecx
lea ecx, [esp + 0x34]
mov byte [esp + 0x180], 0x1a
call fcn.1018ae20
push eax
lea edx, [esp + 0xb0]
push edx
lea ecx, [esp + 0x38]
call fcn.1018a690
mov ebp, 0x10
mov byte [esp + 0x178], 0x10
cmp dword [esp + 0x15c], ebp
jb 0x1018f4a8
mov eax, dword [esp + 0x148]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov word [esp + 0xd2], si
cmp dword [ebx + 0x14], ebp
jb 0x1018f4b9
mov edx, dword [ebx]
jmp 0x1018f4bb
mov edx, ebx
mov eax, edx
mov dword [esp + 0x15c], 0xf
mov dword [esp + 0x158], edi
mov byte [esp + 0x148], 0
lea esi, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1018f4e0
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x150]
call fcn.10048340
lea ecx, [esp + 0x148]
push ecx
lea ecx, [esp + 0x58]
mov byte [esp + 0x17c], 0x1b
call fcn.1018d210
mov byte [esp + 0x178], 0x10
cmp dword [esp + 0x15c], ebp
jb 0x1018f543
mov edx, dword [esp + 0x148]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
jmp 0x1018f543
mov ax, word [eax + 0x28]
mov word [esp + 0xd2], ax
jmp 0x1018f543
xor edi, edi
lea ecx, [esp + 0xcc]
push ecx
lea ecx, [esp + 0x94]
call fcn.1018a590
cmp dword [esp + 0xc4], 0x10
jb 0x1018f571
mov edx, dword [esp + 0xb0]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0xc4], 0xf
mov dword [esp + 0xc0], edi
mov byte [esp + 0xb0], 0
mov byte [esp + 0x178], 0xa
cmp ebp, edi
je 0x1018f5d3
mov ebx, dword [esp + 0x40]
mov esi, ebp
cmp ebp, ebx
je 0x1018f5ca
cmp dword [esi + 0x14], 0x10
jb 0x1018f5b6
mov eax, dword [esi]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], edi
mov byte [esi], 0
add esi, 0x1c
cmp esi, ebx
jne 0x1018f5a5
push ebp
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ebp, dword [esp + 0x28]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
xor ebx, ebx
mov eax, dword [esp + 0x4c]
add dword [esp + 0x74], 0x1c
inc eax
mov dword [esp + 0x4c], eax
cmp eax, dword [esp + 0x14]
jb 0x1018eff0
push 0x18
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
cmp eax, ebx
je 0x1018fab9
or ecx, 0xffffffff
mov dword [eax], vtable.._AV__StateArcNet_UFiller_Arc____BY07D__.0
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], ebx
mov esi, eax
jmp 0x1018fabb
push 0x1016baa0
push 2
push 0x102
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x30]
mov dword [esp + 0x30], ebx
call fcn.101697a0
mov eax, dword [esp + 0x24]
push str._is_Destroy
push ebp
push str.__Res
add eax, 0xbc0
push str.ResLoader_Filler_KeyWord::load_res
push eax
mov byte [esp + 0x18c], 0x11
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
lea ecx, [esp + 0x20]
mov byte [esp + 0x178], 0x10
call fcn.1016b8b0
mov eax, dword [esp + 0x20]
mov edi, eax
mov ebp, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
cmp eax, ebx
je 0x1018f6f2
lea esi, [eax + 0xc08]
mov dword [esp + 0x14], esi
lea ecx, [esi - 0x44]
mov byte [esp + 0x178], 0x12
call fcn.1004eb00
mov eax, dword [esi - 0x48]
mov ecx, dword [eax + 4]
mov dword [ecx + esi - 0x48], ebp
push esi
mov byte [esp + 0x17c], 0x10
mov dword [esi], vtable.std::ios_base.0
call fcn.1015ff0a
push edi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 8
push 0x1016baa0
push 2
push 0x102
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x30]
mov dword [esp + 0x30], ebx
call fcn.101697a0
mov eax, dword [esp + 0x24]
push 0xea67
add eax, 0xbc0
push str.Error:_ret
push eax
mov byte [esp + 0x184], 0x13
call fcn.10167060
add esp, 8
mov ecx, eax
call fcn.10167af0
lea ecx, [esp + 0x20]
mov byte [esp + 0x178], 0x10
call fcn.1016b8b0
mov eax, dword [esp + 0x20]
mov edi, eax
cmp eax, ebx
je 0x1018f797
lea esi, [eax + 0xc08]
mov dword [esp + 0x14], esi
lea ecx, [esi - 0x44]
mov byte [esp + 0x178], 0x14
call fcn.1004eb00
mov edx, dword [esi - 0x48]
mov eax, dword [edx + 4]
mov dword [eax + esi - 0x48], ebp
push esi
mov byte [esp + 0x17c], 0x10
mov dword [esi], vtable.std::ios_base.0
call fcn.1015ff0a
push edi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 8
cmp dword [esp + 0xc4], 0x10
jb 0x1018f7b1
mov ecx, dword [esp + 0xb0]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0xc4], 0xf
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], 0
cmp ebp, ebx
je 0x1018f80e
mov edi, dword [esp + 0x40]
mov esi, ebp
cmp ebp, edi
je 0x1018f805
lea ecx, [ecx]
cmp dword [esi + 0x14], 0x10
jb 0x1018f7f1
mov eax, dword [esi]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov byte [esi], 0
add esi, 0x1c
cmp esi, edi
jne 0x1018f7e0
push ebp
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp dword [esp + 0x64], ebx
je 0x1018f853
mov esi, dword [esp + 0x64]
mov edi, dword [esp + 0x68]
cmp esi, edi
je 0x1018f84a
mov ebp, 0xf
cmp dword [esi + 0x14], 0x10
jb 0x1018f836
mov eax, dword [esi]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esi + 0x14], ebp
mov dword [esi + 0x10], ebx
mov byte [esi], 0
add esi, 0x1c
cmp esi, edi
jne 0x1018f825
mov esi, dword [esp + 0x64]
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [esp + 0x30]
mov ecx, dword [eax]
push eax
push ecx
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x184], 0x15
call fcn.1018c6e0
mov eax, dword [esp + 0x30]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
mov ebp, dword [esp + 0x58]
add esp, 4
cmp ebp, ebx
je 0x1018f8be
mov edi, dword [esp + 0x58]
mov esi, ebp
cmp ebp, edi
je 0x1018f8b5
cmp dword [esi + 0x14], 0x10
jb 0x1018f8a1
mov ecx, dword [esi]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov byte [esi], 0
add esi, 0x1c
cmp esi, edi
jne 0x1018f890
push ebp
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [esp + 0x90]
cmp eax, ebx
je 0x1018f8d2
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov edx, dword [esp + 0x78]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
jmp 0x1018eaa8
push 0x1016baa0
push 2
push 0x11d
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.101697a0
mov edx, dword [esp + 0x50]
mov eax, dword [edx + 4]
mov ecx, dword [esp + 0x18]
push eax
push str._id
add edx, 8
push edx
push str.__Res_is_breaken__type:
add ecx, 0xbc0
push str.ResLoader_Filler_KeyWord::load_res
push ecx
mov byte [esp + 0x190], 0x17
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
push eax
call fcn.10167060
add esp, 8
mov ecx, eax
call fcn.10167af0
lea ecx, [esp + 0x14]
mov byte [esp + 0x178], 0x10
call fcn.1016cac0
push 0x1016baa0
push 2
push 0x11d
push str.f:userypzhu2ivw_trunk_1421_sourcew_res_res_loader_resLoader_ivw_statenet.h
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.101697a0
mov eax, dword [esp + 0x18]
push 0xea64
add eax, 0xbc0
push str.Error:_ret
push eax
mov byte [esp + 0x184], 0x18
call fcn.10167060
add esp, 8
mov ecx, eax
call fcn.10167af0
lea ecx, [esp + 0x14]
mov byte [esp + 0x178], 0x10
call fcn.1016cac0
cmp dword [esp + 0xc4], 0x10
jb 0x1018f9df
mov eax, dword [esp + 0xb0]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esp + 0xc4], 0xf
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], 0
cmp esi, ebx
je 0x1018fa17
mov ecx, dword [esp + 0x14]
push ecx
lea edx, [esp + 0x4c]
push edx
push edi
push esi
call fcn.1016ada0
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 0x14
mov esi, dword [esp + 0x64]
cmp esi, ebx
je 0x1018fa3d
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x68]
push eax
lea ecx, [esp + 0x74]
push ecx
push edx
push esi
call fcn.1016ada0
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 0x14
mov eax, dword [esp + 0x30]
mov ecx, dword [eax]
push eax
push ecx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0x184], 0x19
call fcn.1018c6e0
mov ecx, dword [esp + 0x30]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
mov esi, dword [esp + 0x58]
add esp, 4
cmp esi, ebx
je 0x1018fa8e
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x58]
push edx
lea eax, [esp + 0x64]
push eax
push ecx
push esi
call fcn.1016ada0
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 0x14
mov eax, dword [esp + 0x90]
cmp eax, ebx
je 0x1018faa2
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov edx, dword [esp + 0x78]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, 0xea64
jmp 0x1018eaad
xor esi, esi
mov dword [esp + 0x14], esi
mov ecx, dword [esp + 0x94]
mov ebx, dword [esp + 0x90]
sub ecx, ebx
mov eax, 0x66666667
imul ecx
mov ecx, dword [esp + 0x58]
sub ecx, dword [esp + 0x54]
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esi + 0x10], eax
mov byte [esp + 0x178], 0x1c
mov dword [esi + 8], edi
mov ecx, str.IVW_SPEECH
mov eax, ebp
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1018fb30
test dl, dl
je 0x1018fb2c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1018fb30
add eax, 2
add ecx, 2
test dl, dl
jne 0x1018fb10
xor eax, eax
jmp 0x1018fb35
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x1018fb47
push 0x32
call sub.MSVCR100.dll_void____cdecl_operator_new___unsigned_int_
mov dword [esi + 4], eax
push 0x30
jmp 0x1018fb76
xor ecx, ecx
mov eax, edi
mov edx, 0xa
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR100.dll_void____cdecl_operator_new___unsigned_int_
mov dword [esi + 4], eax
mov eax, dword [esi + 0x10]
xor ecx, ecx
mov edx, 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR100.dll_void____cdecl_operator_new___unsigned_int_
add esp, 8
mov dword [esi + 0xc], eax
test edi, edi
je 0x1018fba8
xor ecx, ecx
mov edx, dword [ebx + ecx]
mov eax, dword [esi + 4]
mov dword [eax + ecx], edx
mov edx, dword [ebx + ecx + 4]
mov dword [eax + ecx + 4], edx
mov dx, word [ebx + ecx + 8]
mov word [eax + ecx + 8], dx
add ecx, 0xa
dec edi
jne 0x1018fb87
xor edi, edi
cmp dword [esi + 0x10], edi
jle 0x1018fbdb
mov ebp, dword [esp + 0x54]
cmp dword [ebp + 0x14], 0x10
jb 0x1018fbbe
mov eax, dword [ebp]
jmp 0x1018fbc0
mov eax, ebp
push 7
push eax
mov eax, dword [esi + 0xc]
lea ecx, [eax + edi*8]
push ecx
call sub.MSVCR100.dll_strncpy
inc edi
add esp, 0xc
add ebp, 0x1c
cmp edi, dword [esi + 0x10]
jl 0x1018fbb3
mov edx, dword [esp + 0x50]
mov dword [edx + 0x448], esi
mov esi, dword [esp + 0x64]
test esi, esi
je 0x1018fc32
mov edi, dword [esp + 0x68]
cmp esi, edi
je 0x1018fc25
mov ebp, 0xf
lea ebx, [ebx]
cmp dword [esi + 0x14], 0x10
jb 0x1018fc11
mov eax, dword [esi]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esi + 0x14], ebp
mov dword [esi + 0x10], 0
mov byte [esi], 0
add esi, 0x1c
cmp esi, edi
jne 0x1018fc00
mov eax, dword [esp + 0x64]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [esp + 0x30]
mov ecx, dword [eax]
push eax
push ecx
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x38]
mov byte [esp + 0x184], 0x1d
call fcn.1018c6e0
mov edx, dword [esp + 0x30]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
mov ebp, dword [esp + 0x58]
add esp, 4
test ebp, ebp
je 0x1018fca2
mov edi, dword [esp + 0x58]
mov esi, ebp
cmp ebp, edi
je 0x1018fc99
nop
cmp dword [esi + 0x14], 0x10
jb 0x1018fc81
mov eax, dword [esi]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
add esi, 0x1c
cmp esi, edi
jne 0x1018fc70
push ebp
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
test ebx, ebx
je 0x1018fcaf
push ebx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ecx, dword [esp + 0x78]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor eax, eax
jmp 0x1018eaad
lea edx, [esp + 0x14]
push edx
lea ecx, [esp + 0xd0]
mov dword [esp + 0x18], edi
call sub.MSVCR100.dll_public:_void___thiscall_std::exception::constructor_char_const__const_const__
push 0x103805c0
lea eax, [esp + 0xd0]
push eax
mov dword [esp + 0xd4], vtable.std::bad_alloc.0
call sub.MSVCR100.dll__CxxThrowException
int3