Function at 0x481400
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x564
push ebx
push esi
lea eax, [ebp + 8]
push edi
push eax
mov dword [ebp - 0x28], ecx
call fcn.004378b6
push 4
pop edi
push edi
lea eax, [ebp + 8]
push eax
push str._svr
call fcn.0043f0e5
add esp, 0x10
xor ebx, ebx
test al, al
mov byte [ebp - 0x2e], al
jne 0x481450
push edi
lea eax, [ebp + 8]
push eax
push str._vhd
call fcn.0043f0e5
add esp, 0xc
test al, al
mov byte [ebp - 0x2d], 1
jne 0x481454
mov byte [ebp - 0x2d], 0
mov al, byte [ebp - 0x2d]
or al, byte [ebp - 0x2e]
jne 0x481648
push edi
lea eax, [ebp + 8]
push eax
push str._udm
call fcn.0043f0e5
add esp, 0xc
test al, al
je 0x481648
mov esi, dword [ebp + 8]
push edi
lea eax, [ebp + 8]
push eax
push str.upud
mov dword [ebp - 0x48], ebx
call fcn.0043f0e5
add esp, 0xc
test al, al
je 0x48149f
mov dword [ebp - 0x48], 0x80000000
jmp 0x4814ba
push 6
lea eax, [ebp + 8]
push eax
push str.listud
call fcn.0043f0e5
add esp, 0xc
test al, al
je 0x4815e0
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x4c], ebx
call fcn.0043d3a5
mov ecx, dword [ebp - 0x28]
push 1
push ebx
lea eax, [ebp - 0x24]
push eax
push dword [ebp + 8]
call fcn.0044b25d
mov eax, dword [ebp - 0x24]
mov dword [ebp + 8], eax
push 5
lea eax, [ebp + 8]
push eax
push str._ret:
mov dword [ebp - 0xc], ebx
call fcn.0043f0e5
mov ecx, dword [ebp + 8]
add esp, 0xc
cmp ecx, ebx
je 0x48150b
mov dx, word [ecx]
cmp dx, 0x2d
je 0x48150b
cmp dx, 0x5c
je 0x48150b
mov al, 1
test al, al
je 0x481527
push 0xd
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0xc]
push eax
mov dword [ebp - 0xc], ecx
call fcn.00418cf5
add esp, 0xc
mov dword [ebp + 8], eax
push 8
lea eax, [ebp + 8]
push eax
xor esi, esi
push str._udmask:
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x34], ebx
call fcn.0043f0e5
add esp, 0xc
test al, al
je 0x48156d
mov eax, dword [ebp + 8]
cmp word [eax], 0x2a
jne 0x48155b
add dword [ebp + 8], 2
push 0x3d
pop esi
mov dword [ebp - 0x34], ebx
jmp 0x48156d
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp + 8]
push eax
call fcn.004486b7
mov esi, dword [ebp - 0x38]
pop ecx
pop ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], eax
push 0xd
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00418cf5
add esp, 0xc
mov dword [ebp + 8], eax
xor edi, edi
cmp word [eax], bx
je 0x481591
mov edi, eax
lea ecx, [ebp - 0x2c]
call fcn.0043d3a5
push ebx
xor eax, eax
xor ecx, ecx
or eax, ecx
push eax
and esi, 0xfeffff
or esi, dword [ebp - 0x48]
lea eax, [ebp - 0x2c]
push esi
push edi
push eax
push dword [ebp - 0x20]
call fcn.00435807
mov ecx, dword [ebp - 0x28]
add esp, 0x18
push dword [ebp - 0x2c]
push dword [ebp - 0xc]
call fcn.0043cc80
lea ecx, [ebp - 0x2c]
call fcn.00437884
lea ecx, [ebp - 0x24]
call fcn.00437884
xor eax, eax
jmp 0x481fea
movzx esi, word [esi]
mov eax, esi
or eax, 0x20
cmp ax, 0x61
jb 0x4815f4
cmp ax, 0x7a
jbe 0x481611
mov eax, esi
call fcn.0043cf13
test al, al
jne 0x481611
cmp si, 0x61
jb 0x48160b
cmp si, 0x66
jbe 0x481611
cmp si, 0x78
jne 0x481618
mov eax, str.22:INDATA
jmp 0x48161d
mov eax, str.22:INDATA_mount
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0xc]
call fcn.0044577c
push dword [ebp + 8]
lea ecx, [ebp - 0xc]
call fcn.0043d411
push dword [ebp - 0xc]
mov ecx, dword [ebp - 0x28]
call fcn.0042edd5
mov esi, eax
lea ecx, [ebp - 0xc]
jmp 0x481fe3
push dword [ebp - 0x28]
lea ecx, [ebp - 0x60]
call fcn.0043f42c
mov edi, 0x4a39d4
push edi
lea ecx, [ebp - 0x40]
call fcn.00445746
push edi
lea ecx, [ebp - 0x44]
call fcn.00445746
push edi
lea ecx, [ebp - 0x4c]
call fcn.00445746
push edi
lea ecx, [ebp - 0x3c]
call fcn.00445746
mov esi, dword [ebp + 8]
cmp word [esi], 0x2d
mov dword [ebp - 0x1c], 0x80000000
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], ebx
mov al, 0x2a
jne 0x48169f
add al, 3
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
movzx ecx, word [esi]
movsx eax, al
cmp eax, ecx
mov byte [ebp - 5], 0
mov byte [ebp - 0xd], 0
mov dword [ebp - 0xc], eax
jne 0x481804
push 5
lea ebx, [esi + 2]
push ebx
push str.query
call fcn.00438a4a
add esp, 0xc
test al, al
je 0x4816de
mov byte [ebp - 5], 1
jmp 0x4817d5
push 3
push ebx
push 0x4aedb0
call fcn.00438a4a
add esp, 0xc
test al, al
je 0x481749
lea eax, [ebp + 8]
add esi, 8
push eax
mov dword [ebp + 8], esi
call fcn.004378b6
mov eax, dword [ebp + 8]
mov dword [ebp - 0x54], eax
lea eax, [ebp + 8]
push eax
call fcn.00405061
mov eax, dword [ebp + 8]
pop ecx
pop ecx
xor ecx, ecx
cmp word [eax], cx
je 0x481723
mov word [eax], cx
add dword [ebp + 8], 2
push ecx
push ecx
mov ecx, dword [ebp - 0x28]
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.00432fb5
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x54], eax
lea eax, [ebp + 8]
push eax
call fcn.004378b6
jmp 0x4817de
push 1
push ebx
push 0x4a84c8
call fcn.00438a4a
add esp, 0xc
test al, al
je 0x481763
mov byte [ebp - 0xd], 1
jmp 0x4817d5
push 1
push ebx
push 0x4aedac
call fcn.00438a4a
add esp, 0xc
test al, al
je 0x481780
mov dword [ebp - 0x34], 1
jmp 0x4817d5
push 1
push ebx
push 0x4a802c
call fcn.00438a4a
add esp, 0xc
test al, al
je 0x48179d
mov dword [ebp - 0x2c], 1
jmp 0x4817d5
push 1
push ebx
push 0x4adbac
call fcn.00438a4a
add esp, 0xc
test al, al
je 0x4817ba
mov dword [ebp - 0x24], 1
jmp 0x4817d5
push 1
push ebx
push 0x4aeda8
call fcn.00438a4a
add esp, 0xc
test al, al
je 0x4817ee
mov dword [ebp - 0x20], 2
lea eax, [ebp + 8]
push eax
call fcn.00407fcf
mov esi, dword [ebp + 8]
movzx eax, word [esi]
cmp dword [ebp - 0xc], eax
pop ecx
je 0x4816be
xor ebx, ebx
jmp 0x481804
cmp ax, 0x21
jne 0x48180c
inc esi
inc esi
mov dword [ebp - 0x48], 1
mov dword [ebp + 8], esi
mov ax, word [esi]
cmp ax, bx
jne 0x4817f2
lea eax, [ebp + 8]
push eax
call fcn.004378b6
pop ecx
mov ecx, dword [ebp - 0x28]
push ebx
push 0x2c
pop esi
push esi
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp + 8]
push eax
call fcn.00432fb5
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0x40]
mov cx, word [eax]
push 0x5c
pop edx
cmp cx, dx
mov dword [ebp - 0x18], eax
je 0x48184a
cmp cx, 0x2f
jne 0x48186f
cmp cx, dx
jne 0x481866
cmp word [eax + 2], dx
jne 0x481866
mov cx, word [eax + 4]
cmp cx, 0x3f
je 0x481860
cmp cx, 0x2e
jne 0x481866
cmp word [eax + 6], dx
je 0x48186f
mov dword [ebp - 4], 1
jmp 0x481872
mov dword [ebp - 4], ebx
cmp byte [ebp - 5], 0
jne 0x4818c9
cmp dword [ebp - 4], ebx
je 0x4818c9
push eax
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
mov ebx, dword [ebp - 0x40]
and dword [ebp - 0x40], 0
mov esi, eax
lea eax, [esi + 3]
push eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 0xc], ebx
call fcn.0043d3ea
mov eax, dword [ebp - 0x40]
inc esi
push esi
mov dword [ebp - 0x18], eax
mov word [eax], 0x20
mov word [eax + 2], 0x3a
add eax, 4
push ebx
push eax
call fcn.00405049
add esp, 0xc
lea ecx, [ebp - 0xc]
call fcn.00437884
push 0x2c
xor ebx, ebx
pop esi
mov eax, dword [ebp + 8]
cmp word [eax], si
jne 0x4818ea
mov ecx, dword [ebp - 0x28]
add dword [ebp + 8], 2
push ebx
push esi
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp + 8]
push eax
call fcn.00432fb5
mov dword [ebp + 8], eax
cmp byte [ebp - 5], 0
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x14], eax
jne 0x48194d
mov eax, dword [ebp + 8]
cmp word [eax], si
jne 0x48194d
add dword [ebp + 8], 2
mov eax, dword [ebp + 8]
cmp word [eax], 0x22
jne 0x48190f
add dword [ebp + 8], 2
push esi
lea eax, [ebp - 0x1c]
push eax
push 1
push esi
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x60]
call fcn.0044e4ae
push eax
call fcn.0043ff9e
mov eax, dword [ebp + 8]
add esp, 0xc
cmp word [eax], si
jne 0x48194d
mov ecx, dword [ebp - 0x28]
add dword [ebp + 8], 2
push ebx
push esi
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp + 8]
push eax
call fcn.00432fb5
mov dword [ebp + 8], eax
cmp byte [ebp - 0x2d], 0
je 0x481a53
mov esi, 0x4beaf4
push esi
call dword [sym.imp.KERNEL32.DLL_EnterCriticalSection]
call fcn.0043a989
push esi
call dword [sym.imp.KERNEL32.DLL_LeaveCriticalSection]
cmp byte [ebp - 0xd], 0
je 0x481985
push dword [ebp - 0x18]
call fcn.0043abca
pop ecx
mov esi, eax
jmp 0x481fb8
or dword [ebp - 0xc], 0xffffffff
cmp dword [ebp - 0x2c], ebx
je 0x4819e3
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x14]
push eax
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
call fcn.00441bc2
mov eax, dword [ebp - 0x14]
mov word [eax], bx
xor eax, eax
pop ecx
inc eax
cmp dword [ebp - 0x24], ebx
pop ecx
je 0x4819b3
xor eax, eax
cmp dword [ebp - 0x34], ebx
jg 0x4819ca
jl 0x4819c3
cmp dword [ebp - 0x38], 0x100000
jae 0x4819ca
mov esi, 0x80070057
jmp 0x481a10
push eax
push dword [ebp - 0x34]
push dword [ebp - 0x38]
push dword [ebp - 0x18]
call fcn.0043aa6b
mov esi, eax
add esp, 0x10
mov dword [ebp - 0xc], esi
jmp 0x481a10
mov eax, dword [ebp - 0x20]
or eax, dword [ebp - 0x34]
or eax, 4
cmp dword [ebp - 0x1c], ebx
jg 0x4819f8
mov dword [ebp - 0x1c], 1
lea ecx, [ebp - 0xc]
push ecx
push dword [ebp - 0x1c]
push dword [ebp - 0x14]
push eax
push dword [ebp - 0x18]
call fcn.00481140
add esp, 0x14
mov esi, eax
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
add eax, 0x3c
push eax
lea ecx, [ebp - 0x2c]
call fcn.0043d3c3
push dword [ebp - 0x14]
push esi
push dword [ebp - 0xc]
push str._d__d__s
push dword [ebp - 0x2c]
call dword [sym.imp.USER32.dll_wsprintfW]
mov ecx, dword [ebp - 0x28]
add esp, 0x14
push dword [ebp - 0x2c]
push dword [ebp - 0x3c]
call fcn.0043cc80
lea ecx, [ebp - 0x2c]
jmp 0x481fb3
cmp byte [ebp - 5], 0
jne 0x481a79
mov eax, dword [ebp - 0x14]
cmp word [eax], bx
jne 0x481a79
cmp byte [ebp - 0xd], 0
je 0x481a6f
mov eax, dword [ebp - 0x18]
cmp word [eax], bx
jne 0x481a79
mov esi, 0x80070057
jmp 0x481fb8
cmp byte [ebp - 0x2e], 0
je 0x481b2c
push 0xffffffffffffffff
push str.22:INDATA_mount_wimsvr__
lea ecx, [ebp - 4]
call fcn.0044577c
push dword [ebp - 0x18]
lea ecx, [ebp - 4]
mov word [ebp - 0xfc], bx
call fcn.0043d411
mov esi, 0x4a7d58
push esi
lea ecx, [ebp - 4]
call fcn.0043d411
push dword [ebp - 0x14]
lea ecx, [ebp - 4]
call fcn.0043d411
push esi
lea ecx, [ebp - 4]
call fcn.0043d411
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
jl 0x481aee
cdq
push edx
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.00484286
add esp, 0xc
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 4]
call fcn.0043d411
push esi
lea ecx, [ebp - 4]
call fcn.0043d411
push dword [ebp - 0x3c]
lea ecx, [ebp - 4]
call fcn.0043d411
push 0x4a7dd8
lea ecx, [ebp - 4]
call fcn.0043d411
push dword [ebp + 8]
lea ecx, [ebp - 4]
call fcn.0043d411
push dword [ebp - 4]
mov ecx, dword [ebp - 0x28]
call fcn.0042edd5
mov esi, eax
jmp 0x481fb0
mov esi, 0x4be6f4
push esi
call dword [sym.imp.KERNEL32.DLL_EnterCriticalSection]
push dword [ebp - 0x54]
lea ecx, [ebp + 8]
call fcn.00438bb3
lea ecx, [ebp + 8]
call fcn.00438b9a
push esi
mov dword [ebp - 0xc], eax
call dword [sym.imp.KERNEL32.DLL_LeaveCriticalSection]
cmp dword [ebp - 0xc], ebx
jge 0x481b71
push str.WIM_DLL_ERR_r_n
push dword [ebp - 0x28]
call fcn.0040f209
pop ecx
pop ecx
xor esi, esi
inc esi
jmp 0x481fb8
cmp byte [ebp - 5], 0
je 0x481c99
cmp dword [0x4be134], ebx
jne 0x481b8b
push 0x78
pop esi
jmp 0x481fb8
mov esi, dword [ebp - 0x18]
push 0x3d
push esi
call dword [sym.imp.SHLWAPI.dll_StrChrW]
cmp eax, ebx
mov dword [ebp - 0x34], eax
je 0x481ba6
mov word [eax], bx
inc eax
inc eax
mov dword [ebp - 0x34], eax
cmp word [esi], bx
je 0x481a6f
lea ecx, [ebp - 0x24]
call fcn.0043d3a5
mov eax, dword [ebp + 8]
cmp word [eax], 0x2c
jne 0x481be2
add dword [ebp + 8], 2
push 1
push 0x2c
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x60]
call fcn.0044e4ae
push ebx
lea ecx, [ebp - 0x24]
push ecx
push eax
call fcn.0043fd51
add esp, 0xc
push dword [ebp - 0x24]
call fcn.004110a0
pop ecx
lea ecx, [ebp - 0x1c]
mov esi, eax
call fcn.0043d3a5
mov edi, dword [ebp - 0x14]
cmp word [edi], bx
je 0x481c1d
cmp word [edi + 2], 0x3a
je 0x481c1d
lea eax, [ebp - 0x1c]
push eax
push edi
call fcn.0041143a
pop ecx
pop ecx
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x44]
call fcn.004457ae
mov edi, dword [eax]
cmp word [esi], bx
je 0x481c42
cmp word [esi + 2], 0x3a
je 0x481c42
lea eax, [ebp - 0x1c]
push eax
push esi
call fcn.0041143a
pop ecx
pop ecx
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x24]
call fcn.004457ae
mov esi, dword [eax]
push 0x20
lea ecx, [ebp - 0x20]
call fcn.0043d3c3
mov eax, dword [ebp - 0x20]
push ebx
push dword [ebp - 0x34]
mov word [eax + 4], bx
lea eax, [ebp - 0x20]
push eax
push esi
push edi
push dword [ebp - 0x28]
call fcn.00448bf5
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x28]
add esp, 0x18
add eax, 4
push eax
push dword [ebp - 0x18]
call fcn.0043cc80
lea ecx, [ebp - 0x20]
call fcn.00437884
lea ecx, [ebp - 0x1c]
call fcn.00437884
lea ecx, [ebp - 0x24]
call fcn.00437884
xor esi, esi
jmp 0x481fb8
cmp byte [ebp - 0xd], 0
mov dword [ebp - 0x2c], ebx
jne 0x481e95
mov esi, dword [ebp - 0x18]
cmp word [esi], bx
je 0x481e95
mov eax, dword [ebp - 0x3c]
cmp word [eax], 0x2a
jne 0x481cdc
push 0x105
lea ecx, [ebp - 0x3c]
call fcn.0043d3ea
mov eax, dword [ebp - 0x3c]
mov word [eax], bx
push dword [ebp - 0x3c]
push 0x104
call dword [sym.imp.KERNEL32.DLL_GetTempPathW]
cmp dword [0x4be12c], ebx
je 0x481b69
push dword [ebp - 0x14]
call fcn.0048eec0
test eax, eax
pop ecx
jne 0x481d11
push dword [ebp - 0x14]
lea ecx, [ebp - 0x34]
call fcn.00445746
push dword [ebp - 0x34]
call fcn.0041baa3
pop ecx
lea ecx, [ebp - 0x34]
call fcn.00437884
push dword [ebp - 0x14]
call fcn.0048eec0
test eax, eax
pop ecx
je 0x481b69
cmp dword [ebp - 4], ebx
jne 0x481d36
push esi
call fcn.0048f058
test eax, eax
pop ecx
je 0x481b69
push 8
pop ecx
xor eax, eax
mov dword [ebp - 0x84], ebx
lea edi, [ebp - 0x80]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x84]
push eax
push ebx
push esi
call dword [sym.imp.KERNEL32.DLL_GetFileAttributesExW]
test eax, eax
je 0x481d62
test byte [ebp - 0x84], 1
jne 0x481d6d
mov eax, dword [ebp - 0x3c]
cmp word [eax], bx
mov dword [ebp - 0x24], eax
jne 0x481d70
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 4], ebx
mov dword [ebp - 0x20], ebx
je 0x481d8d
cmp dword [ebp - 0xc], ebx
jne 0x481d84
mov dword [ebp - 0x20], pe_nt_image_headers32
cmp dword [ebp - 0x48], ebx
je 0x481d8d
or byte [ebp - 0x1f], 2
xor eax, eax
inc eax
cmp dword [ebp - 4], ebx
je 0x481da1
lea eax, [ebp - 0x20]
push eax
push esi
call fcn.0047262b
pop ecx
pop ecx
mov edi, dword [ebp - 0x1c]
sar eax, 8
movzx esi, al
dec esi
cmp edi, 0x80000000
jne 0x481db6
xor edi, edi
inc edi
push dword [ebp - 0x18]
call fcn.0048f058
test eax, eax
pop ecx
je 0x481e17
cmp dword [ebp - 0xc], ebx
je 0x481de3
cmp edi, ebx
jge 0x481dcf
xor edi, edi
inc edi
push dword [ebp - 0x24]
push edi
push dword [ebp - 0x18]
push dword [ebp - 0x14]
call fcn.00448a7f
add esp, 0x10
jmp 0x481dfa
cmp edi, ebx
jge 0x481dea
xor edi, edi
inc edi
push dword [ebp - 0x24]
push edi
push dword [ebp - 0x18]
push dword [ebp - 0x14]
call dword [0x4be12c]
push eax
push dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push str.FOUND_WIM___s____mount_to___s____s___d_r_n
push dword [ebp - 0x28]
call fcn.0040f209
add esp, 0x18
cmp dword [ebp - 4], ebx
je 0x481e2e
cmp dword [ebp - 0x48], ebx
jne 0x481e2e
mov eax, dword [ebp - 0x20]
cmp ax, bx
je 0x481e2e
call fcn.00439361
cmp esi, ebx
jl 0x481e58
push esi
lea eax, [ebp - 0x14c]
push str.PART_update__d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
mov ecx, dword [ebp - 0x28]
add esp, 0xc
push ebx
lea eax, [ebp - 0x144]
push eax
call fcn.00458dd1
lea ecx, [ebp - 0x50]
call fcn.00437884
lea ecx, [ebp - 0x3c]
call fcn.00437884
lea ecx, [ebp - 0x4c]
call fcn.00437884
lea ecx, [ebp - 0x44]
call fcn.00437884
lea ecx, [ebp - 0x40]
call fcn.00437884
lea ecx, [ebp - 0x60]
call fcn.00437884
xor eax, eax
cmp dword [ebp - 0x2c], ebx
sete al
jmp 0x481fea
lea ecx, [ebp - 4]
call fcn.0043d3a5
mov esi, dword [ebp - 0x14]
cmp word [esi], bx
je 0x481ec8
cmp word [esi + 2], 0x3a
je 0x481ec8
lea eax, [ebp - 4]
push eax
push esi
call fcn.0041143a
pop ecx
pop ecx
push dword [ebp - 4]
lea ecx, [ebp - 0x44]
call fcn.004457ae
mov esi, dword [eax]
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x18]
cmp word [eax], bx
je 0x481ef3
cmp word [eax + 2], 0x3a
je 0x481ef3
lea ecx, [ebp - 4]
push ecx
push eax
call fcn.0041143a
pop ecx
pop ecx
push dword [ebp - 4]
lea ecx, [ebp - 0x40]
call fcn.004457ae
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
cmp word [esi], bx
jne 0x481f28
cmp word [eax], bx
je 0x481f23
lea ecx, [ebp - 0x564]
push ecx
push edi
lea ecx, [ebp - 4]
push ecx
push eax
push edi
push dword [ebp - 0x28]
call fcn.00448bf5
add esp, 0x18
test eax, eax
je 0x481f40
lea esi, [ebp - 0x35c]
mov dword [ebp - 0x14], esi
cmp word [esi], bx
je 0x481f40
cmp dword [0x4be130], ebx
jne 0x481f35
xor esi, esi
inc esi
jmp 0x481fb0
push esi
call fcn.0048eec0
test eax, eax
pop ecx
jne 0x481f47
mov esi, 0x80070057
jmp 0x481fb0
mov eax, dword [ebp - 0x18]
cmp word [eax], bx
mov dword [ebp - 0x34], eax
jne 0x481f55
mov dword [ebp - 0x34], ebx
cmp word [esi], bx
mov edi, esi
jne 0x481f5e
xor edi, edi
cmp dword [ebp - 0x1c], 0x80000000
jne 0x481f6a
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0xc], ebx
je 0x481f88
xor eax, eax
cmp dword [ebp - 0x1c], ebx
setne al
push eax
push dword [ebp - 0x14]
call fcn.0043a880
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
je 0x481fb0
cmp dword [ebp - 0x1c], 0x80000000
je 0x481f9b
cmp dword [ebp - 0x1c], ebx
je 0x481f9b
xor eax, eax
inc eax
jmp 0x481f9d
xor eax, eax
push eax
push ebx
push dword [ebp - 0x34]
push edi
call dword [0x4be130]
mov esi, eax
neg esi
sbb esi, esi
inc esi
lea ecx, [ebp - 4]
call fcn.00437884
lea ecx, [ebp - 0x50]
call fcn.00437884
lea ecx, [ebp - 0x3c]
call fcn.00437884
lea ecx, [ebp - 0x4c]
call fcn.00437884
lea ecx, [ebp - 0x44]
call fcn.00437884
lea ecx, [ebp - 0x40]
call fcn.00437884
lea ecx, [ebp - 0x60]
call fcn.00437884
mov eax, esi
pop edi
pop esi
pop ebx
leave
ret 8