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

Disassembly:
mov eax, 0x138
call fcn.00602270
push esi
mov esi, ecx
mov eax, dword [esi + 0x56]
test byte [eax + 8], 4
jne 0x48ec1b
mov ecx, dword [esi + 0x62]
test byte [ecx + 8], 4
jne 0x48ec1b
movsx edx, word [esi + 0x13]
mov eax, dword [0x65fdf8]
push ebx
push ebp
push edi
xor edi, edi
mov dword [esp + 0x20], 0x621538
shl edx, 4
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov ecx, dword [edx + eax]
mov dword [esp + 0x18], edi
push ecx
lea ecx, [esp + 0x8c]
call fcn.00514fc8
movsx edx, word [esi + 0x13]
mov eax, dword [0x65fdf8]
shl edx, 4
mov ecx, dword [edx + eax]
push ecx
lea ecx, [esp + 0x100]
call fcn.00513fa0
mov ecx, dword [esi + 0x62]
call fcn.00502374
mov ebp, eax
mov bl, 2
mov dword [esp + 0x10], ebp
cmp ebp, edi
je 0x48e611
test byte [ebp + 0x49], bl
je 0x48e5f6
cmp dword [ebp + 0x45], 1
jne 0x48e5f6
mov ecx, ebp
call fcn.004f0a0c
mov dword [esp + 0x10], eax
mov ebp, eax
jmp 0x48e5d8
cmp ebp, edi
je 0x48e611
mov ecx, dword [esi + 0x62]
call fcn.00502374
cmp ebp, eax
jne 0x48e611
mov ecx, ebp
call fcn.004f0a0c
mov dword [esp + 0x10], eax
mov ecx, esi
call fcn.0048de00
mov eax, dword [esi + 0x56]
mov dl, byte [eax + 8]
or dl, 4
mov byte [eax + 8], dl
mov eax, dword [esi + 0x62]
mov cl, byte [eax + 8]
or cl, 4
mov byte [eax + 8], cl
mov ecx, dword [esi + 0x56]
call fcn.00502374
mov ebp, eax
cmp ebp, edi
je 0x48eb30
mov ecx, ebp
call fcn.004f0a0c
mov edx, dword [ebp]
mov edi, eax
push 0
push 0
mov ecx, ebp
mov dword [esp + 0x24], edi
call dword [edx + 0x74]
mov ebx, 1
cmp eax, ebx
je 0x48e78e
mov eax, dword [ebp + 0x4e]
test eax, eax
je 0x48e78e
mov ecx, dword [esi + 0x56]
push ebp
mov dword [esp + 0x1c], ebx
mov eax, dword [ecx]
call dword [eax + 0x68]
mov ecx, dword [ebp + 0x4e]
call fcn.00502374
mov ebx, eax
test ebx, ebx
je 0x48e78a
mov edx, dword [ebx]
push 0
push 0
mov ecx, ebx
call dword [edx + 0x74]
cmp eax, 1
je 0x48e78a
mov eax, dword [esi + 0x62]
push 0xc1f
mov ecx, ebx
mov dword [esp + 0x18], eax
call fcn.004ef864
mov edi, dword [eax + 0x17]
mov ecx, dword [esp + 0x14]
add edi, 4
call fcn.0048e160
test eax, eax
jne 0x48e6fe
mov al, byte [esi + 9]
mov edx, dword [ebx]
shr eax, 3
and eax, 1
mov ecx, ebx
push eax
push esi
call dword [edx + 0xb0]
mov ecx, dword [esp + 0x10]
mov edi, eax
push 0
push ecx
mov ecx, dword [esi + 0x62]
push edi
call fcn.005019d0
push ebp
push ebx
mov ecx, edi
call fcn.00486b00
jmp 0x48e707
push ebp
push ebx
mov ecx, eax
call fcn.00486c50
mov ecx, ebx
call fcn.004f0a0c
mov ebx, eax
test ebx, ebx
je 0x48e786
mov edx, dword [ebx]
push 0
push 0
mov ecx, ebx
call dword [edx + 0x74]
cmp eax, 1
je 0x48e786
mov eax, dword [esi + 0x62]
push 0xc1f
mov ecx, ebx
mov dword [esp + 0x18], eax
call fcn.004ef864
mov edi, dword [eax + 0x17]
mov ecx, dword [esp + 0x14]
add edi, 4
call fcn.0048e160
test eax, eax
jne 0x48e771
mov al, byte [esi + 9]
mov edx, dword [ebx]
shr eax, 3
and eax, 1
mov ecx, ebx
push eax
push esi
call dword [edx + 0xb0]
mov ecx, dword [esp + 0x10]
push 0
push ecx
mov ecx, dword [esi + 0x62]
push eax
call fcn.005019d0
jmp 0x48e779
push ebx
mov ecx, eax
call fcn.00486c90
mov ecx, ebx
call fcn.004f0a0c
mov ebx, eax
test ebx, ebx
jne 0x48e714
mov edi, dword [esp + 0x1c]
push 1
jmp 0x48e7a2
test byte [esi + 9], 8
je 0x48e7a9
mov ecx, dword [esi + 0x56]
push ebp
mov dword [esp + 0x1c], ebx
mov eax, dword [ecx]
call dword [eax + 0x68]
push ebx
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx]
test edi, edi
mov ebp, edi
jne 0x48e642
mov eax, dword [esp + 0x18]
test eax, eax
je 0x48eb30
mov ecx, dword [esi + 0x4a]
test ecx, ecx
je 0x48eb30
mov eax, dword [esi + 0x66]
test eax, eax
je 0x48eb30
mov eax, dword [eax + 0x17]
add eax, 4
push eax
call fcn.00408eb0
test eax, eax
je 0x48e80f
mov eax, dword [eax + 0xaa]
cmp eax, 7
je 0x48eb30
cmp eax, 5
je 0x48eb30
cmp eax, 0x11
je 0x48eb30
cmp eax, 9
je 0x48eb30
mov ecx, dword [esi + 0x62]
call fcn.00502374
mov ebp, eax
test ebp, ebp
je 0x48e866
mov ecx, dword [ebp + 0x4e]
test ecx, ecx
je 0x48e859
call fcn.00502374
mov ebx, eax
test ebx, ebx
je 0x48e859
lea eax, [esp + 0xfc]
push ebp
lea ecx, [esp + 0x8c]
push eax
lea edx, [esp + 0x28]
push ecx
push edx
mov edi, ebx
call fcn.0048e230
mov ecx, ebx
call fcn.004f0a0c
mov ebx, eax
test ebx, ebx
jne 0x48e82f
mov ecx, ebp
call fcn.004f0a0c
mov ebp, eax
test ebp, ebp
jne 0x48e81d
mov ebp, dword [esp + 0x24]
test ebp, ebp
je 0x48eb30
mov ebx, dword [ebp + 0xc]
push 0xc2c
mov ecx, ebx
call fcn.004ef864
mov ecx, eax
call fcn.0050372c
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x78]
cmp eax, 0x3c
jne 0x48e8aa
mov ecx, dword [ebx + 0x5a]
test ecx, ecx
je 0x48e8a1
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [ebx + 0x5a], 0
jmp 0x48e8e2
mov ecx, dword [ebx + 0x4a]
xor edi, edi
cmp ecx, edi
je 0x48e8b9
mov eax, dword [ecx]
push 1
call dword [eax]
mov dword [ebx + 0x4a], edi
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebx + 0x5a]
cmp ecx, edi
je 0x48e8cc
mov edx, dword [ecx]
push 1
call dword [edx]
push 0xc2c
mov ecx, ebx
mov dword [ebx + 0x5a], edi
call fcn.004ef864
mov ecx, eax
call fcn.0050372c
mov ebp, dword [ebp + 4]
test ebp, ebp
jne 0x48e872
mov eax, dword [esp + 0x24]
test eax, eax
je 0x48eb30
mov ecx, dword [esi + 0x62]
mov dword [esp + 0x14], ebp
call fcn.00502374
mov ebx, eax
test ebx, ebx
mov dword [esp + 0x10], ebx
je 0x48eb30
jmp 0x48e915
mov ebx, dword [esp + 0x10]
mov ecx, ebx
call fcn.004f0a0c
mov ecx, dword [ebx + 0x4e]
mov ebp, eax
test ecx, ecx
mov dword [esp + 0x30], ebp
je 0x48e94d
call fcn.00502374
test eax, eax
je 0x48e94d
mov ecx, dword [ebx + 0x4e]
call fcn.00502374
mov edx, dword [eax]
push 0
push 0
mov ecx, eax
call dword [edx + 0x74]
test eax, eax
je 0x48eb1b
mov eax, dword [ebx]
push 0
push 0
mov ecx, ebx
call dword [eax + 0x74]
cmp eax, 1
je 0x48eb1b
push 0x87a
mov ecx, ebx
call fcn.004ef864
mov ecx, dword [eax + 0x17]
add ecx, 4
mov dword [esp + 0x2c], ecx
call fcn.00510910
cmp eax, 0x3d
mov dword [esp + 0x38], eax
je 0x48e98e
cmp eax, 0x3e
jne 0x48eb1b
lea ecx, [esp + 0x3c]
call fcn.00415980
lea ecx, [esp + 0xb0]
call fcn.00415980
push 0xc1f
mov ecx, ebx
call fcn.004ef864
push 0xc28
mov ecx, ebx
mov dword [esp + 0x38], eax
call fcn.004ef864
mov edi, eax
mov dword [esp + 0x1c], edi
mov ecx, dword [edi + 0x17]
push ecx
lea ecx, [esp + 0xb4]
call fcn.00514040
mov ebp, dword [esp + 0x24]
test ebp, ebp
je 0x48eb06
jmp 0x48e9e7
mov edi, dword [esp + 0x1c]
lea ecx, [esp + 0xb0]
call fcn.00425520
test eax, eax
jne 0x48eb06
mov eax, dword [ebp + 0x18]
mov ebx, dword [ebp + 0xc]
test eax, eax
jne 0x48ea28
mov edx, dword [esp + 0x38]
lea eax, [esp + 0xfc]
push edx
push eax
mov eax, dword [edi + 0x17]
lea ecx, [esp + 0x90]
push ecx
lea edi, [esp + 0x48]
call fcn.0048e1a0
jmp 0x48ea39
lea edx, [esp + 0xb0]
lea ecx, [esp + 0x3c]
push edx
call fcn.005140bc
mov eax, dword [ebx]
push 0
push 0xc38
mov ecx, ebx
call dword [eax + 0x64]
mov ecx, 0x5e
mov edi, eax
call fcn.004dbd30
test eax, eax
je 0x48ea7e
mov ecx, dword [esp + 0x34]
mov edx, dword [ecx + 0x17]
movsx ecx, word [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x30]
push edi
push ecx
lea ecx, [esp + 0x48]
add edx, 4
push ecx
push 0
push edx
mov ecx, eax
call fcn.00494b60
jmp 0x48ea80
xor eax, eax
mov edx, dword [edi]
push 0
push eax
mov ecx, edi
call dword [edx + 0x60]
mov ecx, dword [ebp + 0x10]
push 0xc28
call fcn.004ef864
lea ecx, [esp + 0x3c]
push 0
push ecx
mov ecx, dword [eax + 0x17]
call fcn.005128d8
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp + 0xc]
cmp eax, ecx
je 0x48eac9
push 0xc2c
call fcn.004ef864
mov ecx, dword [eax + 0x17]
lea edx, [esp + 0x3c]
push 0
push edx
call fcn.005128d8
lea eax, [esp + 0x3c]
push 0
push eax
lea ecx, [esp + 0xb8]
call fcn.0051292c
push 0xc2c
mov ecx, ebx
call fcn.004ef864
lea ecx, [esp + 0x3c]
push 0
push ecx
mov ecx, dword [eax + 0x17]
call fcn.005128d8
mov ebp, dword [ebp + 4]
mov ebx, dword [esp + 0x10]
test ebp, ebp
jne 0x48e9e3
mov ecx, dword [esi + 0x62]
push ebx
mov edx, dword [ecx]
call dword [edx + 0x68]
mov eax, dword [ebx]
push 1
mov ecx, ebx
call dword [eax]
mov ebp, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], ebp
inc ecx
test ebp, ebp
mov dword [esp + 0x14], ecx
jne 0x48e911
mov ecx, dword [esi + 0x62]
call fcn.00502374
mov ebx, eax
test ebx, ebx
je 0x48eb75
mov edi, 1
mov ecx, ebx
call fcn.004f0a0c
mov edx, dword [ebx]
push 0
push 0
mov ecx, ebx
mov ebp, eax
call dword [edx + 0x74]
test eax, eax
je 0x48eb6f
mov ecx, dword [esi + 0x62]
push ebx
mov eax, dword [ecx]
call dword [eax + 0x68]
mov edx, dword [ebx]
push edi
mov ecx, ebx
call dword [edx]
mov dword [esp + 0x18], edi
test ebp, ebp
mov ebx, ebp
jne 0x48eb43
mov eax, dword [esp + 0x18]
mov bl, 0xfb
test eax, eax
je 0x48ebfe
test byte [esi + 8], 4
jne 0x48ebfe
mov ecx, esi
call fcn.00502c94
mov ecx, dword [esi + 0x62]
push 0
push 0x502d4c
call fcn.005023ec
mov ecx, dword [esi + 0x56]
push 0
push 0x502d4c
call fcn.005023ec
mov ecx, dword [esi + 0x5a]
push 0
push 0x502d4c
call fcn.005023ec
mov ecx, dword [esi + 0x5e]
push 0
push 0x502d4c
call fcn.005023ec
mov eax, dword [esi + 0x56]
push 8
mov cl, byte [eax + 8]
and cl, bl
mov byte [eax + 8], cl
mov ecx, dword [esi + 0x56]
call fcn.004ee558
mov eax, dword [esi + 0x56]
push 8
mov dl, byte [eax + 8]
or dl, 4
mov byte [eax + 8], dl
mov eax, dword [esi + 0x62]
mov cl, byte [eax + 8]
and cl, bl
mov byte [eax + 8], cl
mov ecx, dword [esi + 0x62]
call fcn.004ee558
mov eax, dword [esi + 0x56]
mov cl, byte [eax + 8]
and cl, bl
mov byte [eax + 8], cl
mov esi, dword [esi + 0x62]
lea ecx, [esp + 0x20]
and byte [esi + 8], bl
call fcn.004e7340
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x138
ret