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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x174
mov eax, dword [0x4b3008]
xor eax, esp
mov dword [esp + 0x170], eax
push ebx
mov ebx, dword [0x7c1e60]
push esi
push edi
mov edi, dword [ebp + 8]
push edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x2c], ebx
call fcn.0048a510
push edi
call fcn.0048a7d0
push edi
call fcn.0048aa30
push edi
mov ecx, ebx
call fcn.0048cca0
push edi
mov dword [0x7c1e78], eax
call fcn.00477860
cmp dword [0x7c1d2c], 6
mov eax, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov dword [esp + 0x20], eax
mov eax, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], eax
jne 0x48df16
push 0x7c1d48
lea eax, [esp + 0x7c]
push str._sExport.PipeMap.dat
push eax
call fcn.00404440
add esp, 0xc
lea eax, [esp + 0x78]
push 0x4a2694
push eax
call esi
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
je 0x48df16
push eax
mov dword [edi + 0x240], 0
xor ebx, ebx
call dword [esp + 0x24]
add esp, 4
test eax, eax
jne 0x48df01
nop word [eax + eax]
lea eax, [esp + 0x24]
mov dword [esp + 0xc], 0
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x14]
push eax
push str._d_d_d
push dword [esp + 0x2c]
call fcn.004043d0
add esp, 0x14
cmp dword [esp + 0xc], 0
je 0x48defd
mov eax, dword [esp + 0x24]
cmp eax, 3
je 0x48deea
cmp eax, 8
je 0x48deea
inc ebx
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x10], ebx
jne 0x48deea
mov esi, dword [edi + 0x58]
mov ebx, dword [edi + 0x5c]
cmp esi, ebx
je 0x48dee6
push 0
push 0x4b3a68
push 0x4b3b30
push 0
push dword [esi]
call sub.VCRUNTIME140.dll___RTDynamicCast
add esp, 0x14
test eax, eax
je 0x48dedf
mov ecx, dword [eax + 0x4818]
cmp ecx, dword [esp + 0xc]
je 0x48e1eb
add esi, 4
cmp esi, ebx
jne 0x48deb3
mov ebx, dword [esp + 0x10]
push dword [esp + 0x1c]
call dword [esp + 0x24]
add esp, 4
test eax, eax
je 0x48de60
mov esi, dword [esp + 0x38]
push dword [esp + 0x1c]
call dword [esp + 0x40]
mov dword [edi + 0x240], ebx
add esp, 4
mov ebx, dword [esp + 0x28]
push edi
mov ecx, ebx
call fcn.00477f40
push edi
call fcn.0048bd70
push 3
push edi
call fcn.0048c480
push 5
push edi
call fcn.0048c480
push edi
call fcn.004884f0
push edi
call fcn.0048ad30
push edi
call fcn.00489870
push edi
call fcn.00489ba0
push edi
call fcn.00489f50
push edi
call fcn.0048a220
push 0x7c1d48
lea eax, [esp + 0x7c]
push str._sExport.Bypass.dat
push eax
call fcn.00404440
add esp, 0xc
lea eax, [esp + 0x78]
push 0x4a2694
push eax
call esi
mov ebx, eax
add esp, 8
mov dword [esp + 0xc], ebx
xorps xmm0, xmm0
test ebx, ebx
je 0x48e408
push ebx
mov dword [esp + 0x20], 0
movsd qword [esp + 0x74], xmm0
movsd qword [esp + 0x64], xmm0
movsd qword [esp + 0x34], xmm0
call dword [esp + 0x24]
add esp, 4
test eax, eax
jne 0x48e400
nop dword [eax]
lea eax, [esp + 0x18]
mov dword [esp + 0x1c], 0
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x1c], 0
push eax
lea eax, [esp + 0x34]
mov dword [esp + 0x1c], 0
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x2c]
push eax
push str._d__d__d__d__d
push ebx
call fcn.004043d0
add esp, 0x1c
cmp dword [esp + 0x1c], 0
je 0x48e3fc
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x2c]
je 0x48e3ce
cmp dword [esp + 0x18], 1
jne 0x48e053
mov eax, dword [esp + 0x14]
cmp eax, 2
je 0x48e3ce
test eax, eax
je 0x48e3ce
cmp dword [0x7c1d2c], 6
jne 0x48e3ce
mov eax, dword [0x7c1d10]
inc eax
cmp dword [0x7c1d34], eax
jle 0x48e3ce
push 0x49f0
call fcn.004a0589
add esp, 4
mov dword [esp + 0x44], eax
mov ecx, eax
call fcn.0042a610
mov esi, eax
mov dword [esp + 0x40], esi
mov dword [esi + 4], edi
lea ebx, [esi + 0x484c]
mov ecx, dword [esp + 0x1c]
mov dword [esi + 0x4818], ecx
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x48e096
mov dword [ebx], 1
mov eax, dword [esp + 0x18]
cmp eax, 1
jne 0x48e0a1
mov dword [ebx], 0
lea edx, [esi + 0x4908]
push edx
mov dword [esp + 0x14], edx
lea ecx, [esi + 0x48d0]
lea edx, [esi + 0x48f0]
push edx
lea edx, [esi + 0x4900]
push edx
lea edx, [esi + 0x4988]
push edx
push ecx
lea ecx, [esi + 0x48c0]
push ecx
lea ecx, [esi + 0x4830]
push ecx
lea eax, [esi + 0x4930]
push eax
push str._d_lf_lf_lf_lf_lf_lf_lf
push dword [esp + 0x30]
call fcn.004043d0
xorps xmm1, xmm1
lea edx, [esi + 0x4908]
add esp, 0x28
movsd qword [edx], xmm1
cmp dword [esi + 0x4930], 0xa
jne 0x48e165
mov edx, dword [esp + 0x18]
cmp edx, 2
jne 0x48e13a
movsd xmm0, qword [esi + 0x48c0]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x48e15b
movsd xmm0, qword [esi + 0x48d0]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x48e15b
mov edx, 3
mov dword [esp + 0x18], edx
cmp dword [ebx], 0
jne 0x48e20b
mov ecx, dword [esp + 0x14]
lea eax, [ecx - 1]
cmp eax, 2
jne 0x48e20b
cmp edx, eax
jne 0x48e1fa
mov edx, dword [esp + 0x10]
mov dword [ebx], 2
mov ecx, dword [esp + 0x14]
movsd xmm3, qword [0x4af5d0]
movsd xmm2, qword [esi + 0x4988]
comisd xmm2, xmm1
jbe 0x48e288
cmp dword [0x7c1d2c], 6
jne 0x48e288
mov eax, dword [0x7c1d10]
inc eax
cmp dword [0x7c1d34], eax
jle 0x48e288
lea eax, [ecx - 1]
cmp eax, dword [esp + 0x18]
jne 0x48e1b8
test ecx, ecx
je 0x48e1b8
cmp ecx, 4
jne 0x48e288
movd xmm0, dword [0x7c1d30]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
divsd xmm0, xmm2
movsd qword [esi + 0x4918], xmm0
cmp dword [ebx], 0
je 0x48e1dc
movaps xmm1, xmm3
movsd qword [edx], xmm1
mov dword [ebx], 3
jmp 0x48e2a7
mov ebx, dword [esp + 0x10]
mov dword [eax + 0x4828], ebx
jmp 0x48deea
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x10]
jmp 0x48e169
mov dword [esi + 0x4930], 1
mov eax, dword [esp + 0x14]
dec eax
cmp eax, 2
lea eax, [esi + 0x48c0]
jne 0x48e231
movsd xmm0, qword [eax]
movsd qword [esi + 0x48b8], xmm0
movsd qword [eax], xmm1
movsd qword [esi + 0x48d0], xmm1
movsd qword [esi + 0x4988], xmm1
mov ecx, dword [esp + 0x14]
lea eax, [ecx - 1]
cmp eax, 2
jne 0x48e202
comisd xmm1, xmm1
jbe 0x48e202
movsd xmm0, qword [esi + 0x48b8]
movsd xmm3, qword [0x4af5d0]
mulsd xmm0, xmm0
mov edx, dword [esp + 0x10]
mulsd xmm0, xmm3
divsd xmm0, xmm1
movsd qword [esi + 0x4900], xmm0
mov ecx, dword [esp + 0x14]
jmp 0x48e171
cmp dword [ebx], 0
je 0x48e29b
movsd qword [esi + 0x4900], xmm3
movsd qword [edx], xmm3
jmp 0x48e2a7
movsd qword [esi + 0x4900], xmm1
movsd qword [edx], xmm1
cmp dword [ebx], 0
je 0x48e3c0
push esi
push dword [esp + 0x30]
mov ecx, edi
push dword [esp + 0x2c]
call fcn.004373d0
movsd xmm0, qword [esi + 0x4830]
mulsd xmm0, qword [0x4af848]
movsd qword [esi + 0x4830], xmm0
xorps xmm0, xmm0
movsd qword [esi + 0x4938], xmm0
movsd xmm1, qword [esi + 0x48c0]
mulsd xmm1, qword [0x4ae928]
comisd xmm1, xmm0
movsd qword [esp + 0x68], xmm1
movsd qword [esi + 0x48c0], xmm1
jbe 0x48e30f
movsd qword [esi + 0x48c8], xmm1
movsd xmm0, qword [esi + 0x4900]
xorps xmm1, xmm1
movsd qword [esi + 0x4920], xmm0
divsd xmm0, qword [0x4af5d0]
ucomisd xmm1, xmm0
ja 0x48e336
sqrtsd xmm0, xmm0
jmp 0x48e33b
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
mulsd xmm0, qword [esp + 0x68]
movsd qword [esi + 0x48b8], xmm0
xorps xmm0, xmm0
mov dword [esi + 0x49c0], 0
comisd xmm0, xmmword [esi + 0x48f0]
jb 0x48e370
movsd xmm0, qword [0x4aeef0]
movsd qword [esi + 0x48f0], xmm0
mov eax, dword [edi + 0x5c]
lea ecx, [edi + 0x58]
mov dword [esp + 0x10], esi
cmp eax, dword [ecx + 8]
je 0x48e387
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x48e392
lea edx, [esp + 0x10]
push edx
push eax
call fcn.00428740
mov eax, dword [edi + 0xa4]
lea ecx, [edi + 0xa0]
cmp eax, dword [ecx + 8]
je 0x48e3af
mov ebx, dword [esp + 0xc]
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x48e3ec
lea edx, [esp + 0x40]
push edx
push eax
call fcn.00411a60
mov ebx, dword [esp + 0xc]
jmp 0x48e3ec
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
mov ebx, dword [esp + 0xc]
jmp 0x48e3ec
lea eax, [esp + 0x50]
push eax
push eax
push eax
push eax
push eax
push eax
push eax
lea eax, [esp + 0x64]
push eax
push str._d_lf_lf_lf_lf_lf_lf_lf
push ebx
call fcn.004043d0
add esp, 0x28
push ebx
call dword [esp + 0x24]
add esp, 4
test eax, eax
je 0x48dfc0
mov esi, dword [esp + 0x38]
push ebx
call dword [esp + 0x40]
add esp, 4
push 0x7c1d48
lea eax, [esp + 0x7c]
push str._sExport.Valve.dat
push eax
call fcn.00404440
add esp, 0xc
lea eax, [esp + 0x78]
push 0x4a2694
push eax
call esi
mov ebx, eax
add esp, 8
mov dword [esp + 0x10], ebx
test ebx, ebx
je 0x48e90f
xorps xmm0, xmm0
mov dword [esp + 0xc], 0
push ebx
movsd qword [esp + 0x64], xmm0
movsd qword [esp + 0x74], xmm0
movsd qword [esp + 0x6c], xmm0
call dword [esp + 0x24]
add esp, 4
test eax, eax
jne 0x48e907
nop dword [eax]
lea eax, [esp + 0x68]
mov dword [esp + 0xc], 0
push eax
lea eax, [esp + 0x74]
mov dword [esp + 0x28], 0
push eax
lea eax, [esp + 0x68]
mov dword [esp + 0x1c], 0
push eax
lea eax, [esp + 0x20]
mov dword [esp + 0x24], 0
push eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x2c]
push eax
push str._d__d__d__d__d__d__lf__lf__lf
push ebx
call fcn.004043d0
add esp, 0x2c
cmp dword [esp + 0xc], 0
je 0x48e903
cmp dword [esp + 0x24], 4
jne 0x48e4e7
mov dword [edi + 0x27c], 1
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x2c]
je 0x48e8d6
cmp dword [esp + 0x14], 1
jne 0x48e530
mov eax, dword [esp + 0x18]
cmp eax, 2
je 0x48e8d6
test eax, eax
je 0x48e8d6
cmp dword [0x7c1d2c], 6
jne 0x48e8d6
mov eax, dword [0x7c1d10]
inc eax
cmp dword [0x7c1d34], eax
jle 0x48e8d6
push 0x49f0
call fcn.004a0589
add esp, 4
mov dword [esp + 0x44], eax
mov ecx, eax
call fcn.0042a610
mov esi, eax
mov dword [esp + 0x44], esi
mov dword [esi + 4], edi
lea ebx, [esi + 0x484c]
mov ecx, dword [esp + 0xc]
mov dword [esi + 0x4818], ecx
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x48e573
mov dword [ebx], 1
mov eax, dword [esp + 0x14]
cmp eax, 1
jne 0x48e57e
mov dword [ebx], 0
lea eax, [esi + 0x48f0]
mov dword [esp + 0x40], eax
lea ecx, [esi + 0x48d0]
push dword [esp + 0x40]
lea eax, [esi + 0x4900]
mov dword [esp + 0x5c], eax
lea edx, [esi + 0x48c0]
push dword [esp + 0x5c]
lea eax, [esi + 0x4988]
mov dword [esp + 0x50], eax
lea eax, [esi + 0x4930]
push dword [esp + 0x50]
push ecx
push edx
lea ecx, [esi + 0x4830]
push ecx
push eax
push str._d_lf_lf_lf_lf_lf_lf
push dword [esp + 0x30]
call fcn.004043d0
add esp, 0x24
cmp dword [esi + 0x4930], 0xa
jne 0x48e63e
mov edx, dword [esp + 0x14]
xorps xmm1, xmm1
cmp edx, 2
jne 0x48e617
movsd xmm0, qword [esi + 0x48c0]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x48e638
movsd xmm0, qword [esi + 0x48d0]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x48e638
mov edx, 3
mov dword [esp + 0x14], edx
cmp dword [ebx], 0
jne 0x48e6df
mov ecx, dword [esp + 0x18]
lea eax, [ecx - 1]
cmp eax, 2
jne 0x48e6df
cmp edx, eax
jne 0x48e6d2
mov dword [ebx], 2
mov ecx, dword [esp + 0x18]
movsd xmm3, qword [0x4af5d0]
lea edx, [esi + 0x4900]
movsd xmm2, qword [esi + 0x4988]
xorps xmm1, xmm1
comisd xmm2, xmm1
jbe 0x48e790
cmp dword [0x7c1d2c], 6
jne 0x48e790
mov eax, dword [0x7c1d10]
inc eax
cmp dword [0x7c1d34], eax
jle 0x48e790
lea eax, [ecx - 1]
cmp eax, dword [esp + 0x14]
jne 0x48e69a
test ecx, ecx
je 0x48e69a
cmp ecx, 4
jne 0x48e790
movd xmm0, dword [0x7c1d30]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
divsd xmm0, xmm2
movsd qword [esi + 0x4918], xmm0
cmp dword [ebx], 0
je 0x48e780
movsd qword [esi + 0x4908], xmm3
mov dword [ebx], 3
jmp 0x48e7af
mov dword [esp + 0x14], 0
jmp 0x48e642
mov dword [esi + 0x4930], 1
mov eax, dword [esp + 0x18]
dec eax
cmp eax, 2
jne 0x48e703
movsd xmm0, qword [esi + 0x48c0]
movsd qword [esi + 0x48b8], xmm0
movsd xmm0, qword [esp + 0x60]
movsd qword [esi + 0x48c0], xmm0
movsd xmm0, qword [esp + 0x70]
movsd xmm2, qword [esp + 0x60]
movsd qword [esi + 0x48d0], xmm0
movsd xmm0, qword [esp + 0x68]
movsd qword [esi + 0x4988], xmm0
mov ecx, dword [esp + 0x18]
lea eax, [ecx - 1]
cmp eax, 2
jne 0x48e642
comisd xmm2, xmm1
jbe 0x48e642
movsd xmm0, qword [esi + 0x48b8]
lea edx, [esi + 0x4900]
movsd xmm3, qword [0x4af5d0]
mulsd xmm0, xmm0
mulsd xmm2, xmm2
mulsd xmm0, xmm3
divsd xmm0, xmm2
movsd qword [edx], xmm0
mov ecx, dword [esp + 0x18]
jmp 0x48e650
movsd qword [esi + 0x4908], xmm1
mov dword [ebx], 3
jmp 0x48e7af
cmp dword [ebx], 0
je 0x48e7a3
movsd qword [edx], xmm3
movsd qword [esi + 0x4908], xmm3
jmp 0x48e7af
movsd qword [edx], xmm1
movsd qword [esi + 0x4908], xmm1
cmp dword [ebx], 0
je 0x48e8c8
push esi
push dword [esp + 0x30]
mov ecx, edi
push dword [esp + 0x24]
call fcn.004373d0
movsd xmm0, qword [esi + 0x4830]
mulsd xmm0, qword [0x4af848]
movsd qword [esi + 0x4830], xmm0
xorps xmm0, xmm0
movsd qword [esi + 0x4938], xmm0
movsd xmm1, qword [esi + 0x48c0]
mulsd xmm1, qword [0x4ae928]
comisd xmm1, xmm0
movsd qword [esp + 0x48], xmm1
movsd qword [esi + 0x48c0], xmm1
jbe 0x48e817
movsd qword [esi + 0x48c8], xmm1
movsd xmm0, qword [esi + 0x4900]
xorps xmm1, xmm1
movsd qword [esi + 0x4920], xmm0
divsd xmm0, qword [0x4af5d0]
ucomisd xmm1, xmm0
ja 0x48e83e
sqrtsd xmm0, xmm0
jmp 0x48e843
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
mulsd xmm0, qword [esp + 0x48]
movsd qword [esi + 0x48b8], xmm0
xorps xmm0, xmm0
mov dword [esi + 0x49c0], 0
comisd xmm0, xmmword [esi + 0x48f0]
jb 0x48e878
movsd xmm0, qword [0x4aeef0]
movsd qword [esi + 0x48f0], xmm0
mov eax, dword [edi + 0x5c]
lea ecx, [edi + 0x58]
mov dword [esp + 0x48], esi
cmp eax, dword [ecx + 8]
je 0x48e88f
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x48e89a
lea edx, [esp + 0x48]
push edx
push eax
call fcn.00428740
mov eax, dword [edi + 0xa4]
lea ecx, [edi + 0xa0]
cmp eax, dword [ecx + 8]
je 0x48e8b7
mov ebx, dword [esp + 0x10]
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x48e8f3
lea edx, [esp + 0x44]
push edx
push eax
call fcn.00411a60
mov ebx, dword [esp + 0x10]
jmp 0x48e8f3
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
mov ebx, dword [esp + 0x10]
jmp 0x48e8f3
lea eax, [esp + 0x30]
push eax
push eax
push eax
push eax
push eax
push eax
lea eax, [esp + 0x68]
push eax
push str._d_lf_lf_lf_lf_lf_lf
push ebx
call fcn.004043d0
add esp, 0x24
push ebx
call dword [esp + 0x24]
add esp, 4
test eax, eax
je 0x48e470
mov esi, dword [esp + 0x38]
push ebx
call dword [esp + 0x40]
add esp, 4
push edi
call fcn.0048afd0
cmp dword [0x7c1d2c], 6
jne 0x48ea96
push 0x7c1d48
lea eax, [esp + 0x7c]
push str._sExport.Valve.dat
push eax
call fcn.00404440
add esp, 0xc
lea eax, [esp + 0x78]
push 0x4a2694
push eax
call esi
mov esi, eax
add esp, 8
test esi, esi
je 0x48ea96
push 0x7c1d48
lea eax, [esp + 0x7c]
push str._sresult.ValvesOpen.dat
push eax
call fcn.00404440
add esp, 0xc
lea eax, [esp + 0x78]
push 0x4a6fb8
push eax
call dword [esp + 0x40]
mov ebx, eax
push 0x4ace4c
push ebx
call fcn.00411e60
xorps xmm0, xmm0
mov dword [esp + 0x1c], 0
push esi
movsd qword [esp + 0x74], xmm0
movsd qword [esp + 0x84], xmm0
movsd qword [esp + 0x7c], xmm0
call dword [esp + 0x34]
add esp, 0x14
test eax, eax
jne 0x48ea86
mov edi, dword [esp + 0x20]
nop dword [eax + eax]
lea eax, [esp + 0x68]
mov dword [esp + 0xc], 0
push eax
lea eax, [esp + 0x74]
mov dword [esp + 0x4c], 0
push eax
lea eax, [esp + 0x68]
mov dword [esp + 0x2c], 0
push eax
lea eax, [esp + 0x30]
mov dword [esp + 0x50], 0
push eax
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x74]
push eax
lea eax, [esp + 0x2c]
push eax
push str._d__d__d__d__d__d__lf__lf__lf
push esi
call fcn.004043d0
add esp, 0x2c
cmp dword [esp + 0xc], 0
je 0x48ea82
lea eax, [esp + 0x30]
push eax
push eax
push eax
push eax
push eax
push eax
lea eax, [esp + 0x68]
push eax
push str._d_lf_lf_lf_lf_lf_lf
push esi
call fcn.004043d0
mov eax, dword [esp + 0x7c]
add esp, 0x24
cmp eax, dword [esp + 0x40]
jne 0x48ea74
cmp dword [esp + 0x24], 0
jne 0x48ea74
movsd xmm0, qword [0x4af5d0]
sub esp, 8
movsd qword [esp], xmm0
push 1
push dword [esp + 0x18]
push str._d__d__lf_n
push ebx
call fcn.00411e60
add esp, 0x18
push esi
call edi
add esp, 4
test eax, eax
je 0x48e9c0
mov edi, dword [esp + 0x5c]
push esi
mov esi, dword [esp + 0x40]
call esi
add esp, 4
push ebx
call esi
add esp, 4
cmp dword [0x7c1e78], 0
jne 0x48ec17
cmp dword [edi + 0x274], 0
jne 0x48ec17
push edi
call fcn.00487000
cmp dword [0x7c1e58], 0
mov esi, dword [esp + 0x28]
jne 0x48eacb
push edi
mov ecx, esi
call fcn.00420e80
push edi
mov ecx, esi
call fcn.00486a60
push edi
call fcn.00487be0
cmp dword [0x7c1d2c], 6
jne 0x48ec00
push 0x7c1d48
lea eax, [esp + 0x7c]
push str._sExport.Shop
push eax
call fcn.00404440
add esp, 0xc
lea eax, [esp + 0x78]
push 0x4a2694
push eax
call dword [esp + 0x40]
add esp, 8
mov dword [esp + 0x28], eax
test eax, eax
je 0x48ec00
push eax
xor ebx, ebx
call dword [esp + 0x24]
add esp, 4
test eax, eax
jne 0x48ebf5
nop dword [eax]
lea eax, [esp + 0x5c]
mov dword [esp + 0xc], 0
push eax
lea eax, [esp + 0x10]
push eax
push str._d_d
push dword [esp + 0x34]
call fcn.004043d0
add esp, 0x10
cmp dword [esp + 0xc], 0
je 0x48ebf5
inc ebx
cmp dword [esp + 0x5c], 1
mov dword [esp + 0x10], ebx
je 0x48ebe2
mov esi, dword [edi + 0x58]
mov ebx, dword [edi + 0x5c]
cmp esi, ebx
je 0x48ebde
cmp dword [0x7c1e58], 0
mov eax, dword [esi]
push 0
jne 0x48ebb2
push 0x4b39bc
push 0x4b3b30
push 0
push eax
call sub.VCRUNTIME140.dll___RTDynamicCast
add esp, 0x14
test eax, eax
je 0x48ebd7
mov ecx, dword [eax + 0x4818]
cmp ecx, dword [esp + 0xc]
jne 0x48ebd7
mov ebx, dword [esp + 0x10]
mov dword [eax + 0x4880], ebx
jmp 0x48ebe2
push 0x4b3abc
push 0x4b3b30
push 0
push eax
call sub.VCRUNTIME140.dll___RTDynamicCast
add esp, 0x14
test eax, eax
je 0x48ebd7
mov ecx, dword [eax + 0x4818]
cmp ecx, dword [esp + 0xc]
je 0x48ec0b
add esi, 4
cmp esi, ebx
jne 0x48eb74
mov ebx, dword [esp + 0x10]
push dword [esp + 0x28]
call dword [esp + 0x24]
add esp, 4
test eax, eax
je 0x48eb30
push dword [esp + 0x28]
call dword [esp + 0x40]
add esp, 4
push edi
call fcn.0048d500
jmp 0x48eca5
mov ebx, dword [esp + 0x10]
mov dword [eax + 0x4828], ebx
jmp 0x48ebe2
push edi
call fcn.00487be0
xorps xmm0, xmm0
mov dword [edi + 0x2a8], 1
mov dword [edi + 0x2ac], 0
mov dword [edi + 0xeb58c], 0
mov dword [edi + 0xeb590], 0
movsd qword [edi + 0xeb5c8], xmm0
movups xmmword [edi + 0xeb5a8], xmm0
mov dword [edi + 0xeb594], 0
movsd qword [edi + 0xeb5b8], xmm0
mov dword [edi + 0xeb598], 0
mov dword [edi + 0xeb59c], 0
mov dword [edi + 0x250], 1
mov dword [edi + 0x210], 0
mov dword [edi + 0x218], 0
mov dword [edi + 0x214], 0
mov eax, dword [edi + 0x5c]
sub eax, dword [edi + 0x58]
sar eax, 2
test eax, eax
jne 0x48ecc7
mov ecx, dword [0x7c1e60]
inc dword [0x7c1e64]
push eax
push edi
push 0xd
call fcn.00479790
mov eax, dword [edi + 0xd4]
sub eax, dword [edi + 0xd0]
test eax, 0xfffffffc
jne 0x48ece4
mov dword [edi + 0x2a8], 1
cmp dword [0x7c1d2c], 6
jne 0x48ecff
push 1
mov ecx, edi
call fcn.0045fa90
test eax, eax
je 0x48ecff
mov dword [0x7c1e64], eax
mov ecx, dword [esp + 0x17c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004a034d
mov esp, ebp
pop ebp
ret 4