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

Disassembly:
sub esp, 0x8c
push ebp
mov ebp, dword [esp + 0x94]
mov eax, dword [ebp]
push esi
mov esi, dword [esp + 0xa0]
xor edx, edx
push edi
mov edi, dword [ebp + 8]
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x10], eax
cmp edi, edx
jne 0x1004b853
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x8c
ret
push ebx
mov ebx, dword [esp + 0xa4]
mov ecx, 0x65
cmp ebx, edx
je 0x1004b867
movzx ecx, byte [ebx]
mov dword [esp + 0x10], ecx
add ecx, 0xffffffed
cmp ecx, 0x8c
ja case.0x1004b881.21
movzx ecx, byte [ecx + 0x1004c3e0]
jmp dword [ecx*4 + 0x1004c37c]
movsx ecx, word [ebx + 0x22]
mov eax, dword [ebx + 0x28]
mov esi, dword [eax + 0x1c]
lea ecx, [ecx + ecx*2]
lea ecx, [esi + ecx*8]
cmp byte [eax], dl
jne 0x1004b8a8
mov edx, dword [ecx + 0x10]
mov dword [esp + 0x20], edx
jmp 0x1004c357
cmp byte [eax + 1], dl
je case.0x1004b881.154
mov edx, dword [esp + 0xa8]
mov ecx, dword [ecx + 0xc]
push edx
mov edx, dword [eax + 8]
push ecx
push edx
push 0x2f
mov esi, edi
call fcn.100113f0
add esp, 0x10
jmp 0x1004c357
mov eax, dword [ebx + 0x1c]
cmp eax, edx
jge 0x1004b8ee
mov ecx, dword [ebp + 0x5c]
cmp ecx, edx
jle 0x1004b8eb
movsx eax, word [ebx + 0x20]
add eax, ecx
mov dword [esp + 0x20], eax
jmp 0x1004c357
mov eax, dword [ebp + 0x60]
movzx ecx, byte [ebx + 0x26]
mov edx, dword [esp + 0xa8]
push ecx
mov ecx, dword [ebx + 0x2c]
push edx
push eax
movsx eax, word [ebx + 0x20]
push eax
push ecx
mov edi, ebp
call fcn.1002b790
add esp, 0x14
mov dword [esp + 0x20], eax
jmp 0x1004c357
push esi
push edx
push ebp
mov eax, ebx
call fcn.1001faf0
add esp, 0xc
jmp 0x1004c357
mov edx, esi
mov esi, dword [ebx + 8]
push edx
push 0
call fcn.100173d0
add esp, 8
jmp 0x1004c357
mov eax, dword [ebx + 8]
push edx
push eax
push edx
push 0x61
push edi
xor eax, eax
mov ecx, esi
call fcn.10015ec0
add esp, 0x14
jmp 0x1004c357
mov eax, esi
push 0x1a
xor ecx, ecx
mov esi, edi
call fcn.10011470
jmp 0x1004c354
mov ebx, dword [ebx + 8]
add ebx, 2
mov eax, ebx
call fcn.10002170
mov esi, eax
dec esi
push esi
push ebx
mov eax, edi
call fcn.10005a80
mov ecx, eax
call fcn.1000eb70
mov ecx, dword [esp + 0xb0]
push 0xffffffffffffffff
push eax
mov eax, esi
cdq
sub eax, edx
sar eax, 1
push eax
push 0x1c
push edi
xor eax, eax
call fcn.10015ec0
add esp, 0x1c
jmp 0x1004c357
movsx ecx, word [ebx + 0x20]
mov eax, esi
push 0x1d
mov esi, edi
call fcn.10011470
mov ecx, dword [ebx + 8]
add esp, 4
cmp byte [ecx + 1], 0
je 0x1004c357
movsx edx, word [ebx + 0x20]
mov eax, dword [ebp + 0x1d4]
mov ecx, dword [eax + edx*4 - 4]
push 0xfffffffffffffffe
push ecx
push edi
or eax, 0xffffffff
call fcn.10011740
add esp, 0xc
jmp 0x1004c357
mov edx, dword [ebx + 0x1c]
mov dword [esp + 0x20], edx
jmp 0x1004c357
mov eax, dword [ebx + 0xc]
push esi
push eax
push ebp
call fcn.1004b810
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x1004c357
mov ecx, dword [ebx + 0xc]
push esi
push ecx
push ebp
call fcn.1004b810
mov ecx, eax
add esp, 0xc
mov dword [esp + 0x20], ecx
cmp ecx, esi
je 0x1004ba44
mov eax, esi
push 0x20
mov esi, edi
call fcn.10011470
mov edx, dword [esp + 0xac]
add esp, 4
mov dword [esp + 0x20], edx
mov edx, dword [ebx + 8]
xor edi, edi
call fcn.100135b0
mov ecx, dword [esp + 0xa8]
mov esi, dword [esp + 0x1c]
movsx eax, al
push 0x28
call fcn.10011470
lea ecx, [edi + 1]
mov edi, dword [esp + 0x24]
add esp, 4
mov eax, ebp
call fcn.10009bf0
jmp 0x1004c357
mov ecx, dword [ebx + 0xc]
lea eax, [esp + 0x30]
push eax
push ecx
mov edi, ebp
call fcn.10019e60
lea edx, [esp + 0x3c]
mov esi, eax
mov eax, dword [ebx + 0x10]
push edx
push eax
call fcn.10019e60
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x20]
push 0x20
push ecx
push eax
mov eax, dword [ebx + 0xc]
push esi
push edx
push eax
mov eax, dword [ebx + 0x10]
mov ecx, ebp
call fcn.1002b690
add esp, 0x28
jmp 0x1004c357
mov edx, dword [ebx + 0xc]
lea ecx, [esp + 0x30]
push ecx
push edx
mov edi, ebp
call fcn.10019e60
mov ecx, dword [ebx + 0x10]
mov esi, eax
lea eax, [esp + 0x3c]
push eax
push ecx
call fcn.10019e60
mov edx, dword [esp + 0xb8]
mov ecx, dword [ebx + 0xc]
push 0xa0
push edx
push eax
xor eax, eax
cmp dword [esp + 0x2c], 0x49
push esi
sete al
add eax, 0x4e
push eax
mov eax, dword [ebx + 0x10]
push ecx
mov ecx, ebp
call fcn.1002b690
add esp, 0x28
jmp 0x1004c357
mov eax, dword [ebx + 0xc]
lea edx, [esp + 0x30]
push edx
push eax
mov edi, ebp
call fcn.10019e60
mov edx, dword [ebx + 0x10]
lea ecx, [esp + 0x3c]
push ecx
push edx
mov esi, eax
call fcn.10019e60
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x20]
push ecx
push esi
mov esi, dword [esp + 0x34]
push eax
push edx
call fcn.100113f0
add esp, 0x20
jmp 0x1004c357
mov eax, dword [ebx + 0xc]
mov cl, byte [eax]
cmp cl, 0x84
jne 0x1004bb79
push esi
push 1
push ebp
call fcn.1001faf0
mov edx, dword [esp + 0xb4]
add esp, 0xc
mov dword [esp + 0x20], edx
jmp 0x1004c357
cmp cl, 0x85
jne 0x1004bb9e
mov ecx, esi
mov esi, dword [eax + 8]
push ecx
push 1
call fcn.100173d0
mov edx, dword [esp + 0xb0]
add esp, 8
mov dword [esp + 0x20], edx
jmp 0x1004c357
mov dword [esp + 0x44], edx
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x40]
push eax
mov edi, ebp
mov byte [esp + 0x44], 0x84
mov dword [esp + 0x48], 0x4400
call fcn.10019e60
mov edx, dword [ebx + 0xc]
lea ecx, [esp + 0x3c]
push ecx
push edx
mov esi, eax
call fcn.10019e60
mov ecx, dword [esp + 0xb8]
push ecx
push esi
mov esi, dword [esp + 0x34]
push eax
push 0x5a
call fcn.100113f0
mov edx, dword [esp + 0xc8]
add esp, 0x20
mov dword [esp + 0x20], edx
jmp 0x1004c357
mov ecx, dword [ebx + 0xc]
lea eax, [esp + 0x30]
push eax
push ecx
mov edi, ebp
call fcn.10019e60
mov edx, dword [esp + 0x18]
mov ecx, eax
mov eax, esi
mov esi, dword [esp + 0x24]
push edx
mov dword [esp + 0x2c], eax
call fcn.10011470
add esp, 0xc
jmp 0x1004c357
mov eax, esi
push 0x17
mov ecx, 1
mov esi, edi
call fcn.10011470
mov ecx, dword [ebx + 0xc]
lea eax, [esp + 0x34]
push eax
push ecx
mov edi, ebp
call fcn.10019e60
mov ecx, dword [esp + 0x1c]
call fcn.10011460
mov edi, eax
mov eax, dword [esp + 0xb4]
push 0x17
xor ecx, ecx
call fcn.10011470
push edi
call fcn.100079d0
add esp, 0x14
jmp 0x1004c357
mov eax, dword [ebx + 0x28]
cmp eax, edx
jne 0x1004bc8e
mov edx, dword [ebx + 8]
push edx
push str.misuse_of_aggregate:__s__
mov edi, ebp
call fcn.1001d580
add esp, 8
jmp 0x1004c357
movsx ecx, word [ebx + 0x22]
mov edx, dword [eax + 0x28]
shl ecx, 4
mov eax, dword [ecx + edx + 8]
mov dword [esp + 0x20], eax
jmp 0x1004c357
test dword [ebx + 4], 0x4000
mov cl, byte [eax + 0x3e]
mov dword [esp + 0x38], edx
mov byte [esp + 0x2c], cl
mov dword [esp + 0x18], edx
je 0x1004bcc3
mov dword [esp + 0x24], edx
jmp 0x1004bcd0
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x24], eax
cmp eax, edx
je 0x1004bcd0
mov edx, dword [eax]
mov esi, dword [ebx + 8]
mov eax, esi
mov dword [esp + 0x28], edx
call fcn.10002170
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
push 0
push ecx
push edx
push eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x24]
push esi
push eax
call fcn.10017890
add esp, 0x18
mov dword [esp + 0x2c], eax
test eax, eax
je 0x1004bfa0
cmp dword [eax + 0xc], 0
je 0x1004bfa0
movzx eax, word [eax + 2]
test eax, 0x200
je 0x1004bdb6
mov eax, edi
call fcn.10011490
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x14], eax
mov eax, dword [edx + 4]
push ecx
mov ecx, dword [eax]
push ecx
push ebp
call fcn.1004c470
mov eax, dword [esp + 0x34]
add esp, 0xc
cmp eax, 1
jle 0x1004bda8
dec eax
mov esi, edi
mov edi, dword [esp + 0xa8]
mov ebx, 0x18
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x14]
push 0x4d
mov ecx, edi
call fcn.10011470
mov ecx, 1
mov eax, ebp
call fcn.10009b10
call fcn.10009b50
mov edx, dword [esp + 0x28]
mov eax, dword [edx + 4]
mov ecx, dword [ebx + eax]
push edi
push ecx
push ebp
call fcn.1004c470
add esp, 0x10
mov eax, ebp
call fcn.10009b60
add ebx, 0x18
sub dword [esp + 0x18], 1
jne 0x1004bd64
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
push edx
jmp 0x1004c34f
test eax, 0x400
je 0x1004bde1
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0xa8]
mov edx, dword [ecx + 4]
push eax
mov eax, dword [edx]
push eax
push ebp
call fcn.1004b810
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x1004c357
mov eax, dword [esp + 0x28]
xor esi, esi
mov dword [esp + 0x1c], 1
test eax, eax
jle 0x1004be63
mov dword [esp + 0x10], esi
cmp esi, 0x20
jge 0x1004be1f
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx + 4]
mov eax, dword [esp + 0x10]
mov edx, dword [edx + eax]
call fcn.10012e10
test eax, eax
mov eax, dword [esp + 0x28]
je 0x1004be1f
mov ecx, dword [esp + 0x1c]
or dword [esp + 0x38], ecx
mov edx, dword [esp + 0x2c]
test byte [edx + 2], 0x20
je 0x1004be4f
cmp dword [esp + 0x18], 0
jne 0x1004be4f
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
mov eax, dword [ecx + edx]
push ebp
call fcn.1002b510
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x2c]
add esp, 4
mov ecx, dword [esp + 0x1c]
add dword [esp + 0x10], 0x18
inc esi
rol ecx, 1
cmp esi, eax
mov dword [esp + 0x1c], ecx
jl 0x1004bdf7
cmp dword [esp + 0x24], 0
je 0x1004bedf
cmp dword [esp + 0x38], 0
je 0x1004be82
mov ecx, dword [ebp + 0x48]
lea edx, [ecx + 1]
add ecx, eax
mov dword [esp + 0x10], edx
mov dword [ebp + 0x48], ecx
jmp 0x1004be8f
mov esi, eax
mov ecx, ebp
call fcn.10009dc0
mov dword [esp + 0x10], eax
mov esi, dword [esp + 0x2c]
test byte [esi + 2], 0xc0
je 0x1004beb7
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
mov cl, byte [eax]
cmp cl, 0x9a
je 0x1004beae
cmp cl, 0x9c
jne 0x1004beb7
mov dl, byte [esi + 2]
and dl, 0xc0
mov byte [eax + 0x26], dl
mov eax, ebp
call fcn.10009b50
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x24]
push eax
push ebp
mov al, 3
call fcn.10019f30
add esp, 8
mov eax, ebp
call fcn.10009b60
mov eax, dword [esp + 0x28]
jmp 0x1004beeb
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x10], 0
cmp eax, 2
jl 0x1004bf09
test byte [ebx + 4], 0x80
je 0x1004bf09
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx + 4]
push eax
mov eax, dword [esp + 0x18]
push esi
push eax
mov eax, dword [edx + 0x18]
jmp 0x1004bf1d
test eax, eax
jle 0x1004bf27
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx + 4]
push eax
mov eax, dword [esp + 0x18]
push esi
push eax
mov eax, dword [edx]
call fcn.100184b0
mov esi, eax
add esp, 0xc
test byte [esi + 2], 0x20
je 0x1004bf50
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x1004bf3c
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 8]
push 0xfffffffffffffffc
push eax
push 0
push 0x22
push edi
xor eax, eax
xor ecx, ecx
call fcn.10015ec0
add esp, 0x14
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0x10]
push 0xfffffffffffffffb
push esi
push edx
push 0x23
push edi
call fcn.10015ec0
mov ebx, dword [esp + 0x3c]
add esp, 0x14
mov dl, bl
mov eax, edi
call fcn.100079b0
test ebx, ebx
je 0x1004c357
cmp dword [esp + 0x38], 0
jne 0x1004c357
mov ecx, dword [esp + 0x10]
mov esi, ebx
mov eax, ebp
call fcn.10009df0
jmp 0x1004c357
mov eax, dword [esp + 0x10]
push esi
push eax
push str.unknown_function:__.s__
mov edi, ebp
call fcn.1001d580
add esp, 0xc
jmp 0x1004c357
push edx
push edx
push ebx
push ebp
call fcn.10046190
add esp, 0x10
mov dword [esp + 0x20], eax
jmp 0x1004c357
mov eax, edi
call fcn.10011490
mov dword [esp + 0x18], eax
mov eax, edi
call fcn.10011490
mov dword [esp + 0x14], eax
mov eax, esi
push 0x1a
xor ecx, ecx
mov esi, edi
call fcn.10011470
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
push ecx
push edx
push ebp
mov eax, ebx
call fcn.10047760
mov ebx, dword [esp + 0xb8]
push 0x17
mov eax, ebx
mov ecx, 1
call fcn.10011470
mov eax, dword [esp + 0x2c]
push eax
mov ecx, edi
call fcn.10007900
push 0x25
xor eax, eax
mov ecx, ebx
call fcn.10011470
mov ecx, dword [esp + 0x30]
push ecx
mov ecx, edi
call fcn.10007900
add esp, 0x20
jmp 0x1004c357
mov edx, dword [ebx + 0x14]
mov eax, dword [ebx + 0xc]
mov esi, dword [edx + 4]
mov ebx, dword [esi]
lea ecx, [esp + 0x30]
push ecx
push eax
mov edi, ebp
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ebx
call fcn.10019e60
lea edx, [esp + 0x3c]
push edx
push ebx
mov dword [esp + 0x20], eax
call fcn.10019e60
mov edx, eax
mov eax, ebp
call fcn.10009d70
mov ebx, eax
mov eax, ebp
call fcn.10009d70
mov ecx, dword [esp + 0x24]
push 0x20
push ebx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x28]
push edx
push eax
mov eax, dword [esp + 0x38]
push 0x53
push ecx
mov ecx, ebp
call fcn.1002b690
mov edi, dword [esi + 0x18]
mov esi, dword [esp + 0x5c]
mov edx, ebp
mov dword [esp + 0x40], edi
call fcn.10009d90
lea edx, [esp + 0x5c]
push edx
push edi
mov edi, ebp
call fcn.10019e60
mov edi, dword [esp + 0x5c]
mov ecx, dword [esp + 0x44]
push 0x20
push edi
push eax
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [esp + 0x58]
push 0x51
push ecx
mov ecx, ebp
call fcn.1002b690
mov edx, dword [esp + 0xf0]
mov esi, dword [esp + 0x64]
add esp, 0x48
push edx
push edi
push ebx
push 0x48
call fcn.100113f0
add esp, 0x10
mov esi, ebx
mov edx, ebp
call fcn.10009d90
mov esi, edi
call fcn.10009d90
jmp 0x1004c357
mov eax, dword [ebx + 0x2c]
movsx ecx, word [eax + 0x22]
movsx edx, word [ebx + 0x20]
inc ecx
imul ecx, dword [ebx + 0x1c]
mov dword [esp + 0x18], eax
mov eax, esi
lea ecx, [ecx + edx + 1]
push 0x86
mov esi, edi
call fcn.10011470
movzx eax, word [ebx + 0x20]
add esp, 4
test ax, ax
jl 0x1004c357
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 4]
cwde
lea eax, [eax + eax*2]
cmp byte [edx + eax*8 + 0x15], 0x45
jne 0x1004c357
mov eax, dword [esp + 0xa8]
mov ecx, 0x27
call fcn.10011460
jmp 0x1004c357
cmp dword [ebp + 0x19c], edx
jne 0x1004c198
push str.RAISE___may_only_be_used_within_a_trigger_program
mov edi, ebp
call fcn.1001d580
add esp, 4
pop ebx
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x8c
ret
cmp byte [ebx + 1], 2
jne 0x1004c1a5
mov ecx, ebp
call fcn.1000a630
mov al, byte [ebx + 1]
cmp al, 4
jne 0x1004c1c7
mov eax, dword [ebx + 8]
push edx
push eax
push edx
xor eax, eax
push 0x16
push edi
lea ecx, [eax + 4]
call fcn.10015ec0
add esp, 0x14
jmp 0x1004c357
mov ecx, dword [ebx + 8]
push 0
push 0
push ecx
movsx edi, al
push 0x713
push ebp
call fcn.1001a600
add esp, 0x14
jmp 0x1004c357
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x18], edx
mov edx, dword [eax + 4]
mov dword [esp + 0x24], eax
mov eax, dword [eax]
mov dword [esp + 0x10], eax
mov eax, edi
mov dword [esp + 0x14], edx
call fcn.10011490
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ebx
test ebx, ebx
je 0x1004c25c
mov eax, ebx
mov esi, eax
mov ecx, 0xc
lea edi, [esp + 0x3c]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x30]
push ecx
push eax
mov edi, ebp
call fcn.10019e60
mov edx, eax
add esp, 8
lea eax, [esp + 0x3c]
call fcn.10009c00
mov edi, dword [esp + 0x1c]
mov edx, eax
lea eax, [esp + 0x6c]
mov byte [esp + 0x6c], 0x4f
mov dword [esp + 0x78], edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], 0
mov ecx, dword [esp + 0x10]
lea eax, [ecx - 1]
test eax, eax
jle 0x1004c2fe
mov ecx, dword [esp + 0x14]
dec eax
shr eax, 1
inc eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x38], eax
jmp 0x1004c284
mov ecx, dword [esp + 0x14]
mov eax, ebp
call fcn.10009b50
cmp dword [esp + 0x2c], 0
je 0x1004c29a
mov ecx, dword [ecx]
mov dword [esp + 0x7c], ecx
jmp 0x1004c2a0
mov edx, dword [ecx]
mov dword [esp + 0x18], edx
mov eax, edi
call fcn.10011490
mov ebx, eax
mov eax, dword [esp + 0x18]
push 0x10
push ebx
push eax
push ebp
call fcn.10047d60
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x24]
mov eax, dword [edx + 0x18]
push ecx
push eax
push ebp
call fcn.1004c470
mov eax, dword [esp + 0x44]
push 0xe
xor ecx, ecx
mov esi, edi
call fcn.10011470
mov eax, ebp
call fcn.10009b60
push ebx
mov ecx, edi
call fcn.10007900
add dword [esp + 0x38], 0x30
add esp, 0x24
sub dword [esp + 0x38], 1
jne 0x1004c280
mov ecx, dword [esp + 0x10]
test cl, 1
je 0x1004c333
mov eax, ebp
call fcn.10009b50
mov edx, dword [esp + 0xa8]
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + 0x24]
push edx
mov edx, dword [ecx + 4]
mov eax, dword [edx + eax*8 - 0x18]
push eax
push ebp
call fcn.1004c470
add esp, 0xc
mov eax, ebp
call fcn.10009b60
jmp 0x1004c348
mov eax, dword [esp + 0xa8]
push 0x1a
xor ecx, ecx
mov esi, edi
call fcn.10011470
add esp, 4
mov ecx, dword [esp + 0x28]
push ecx
mov ecx, edi
call fcn.10007900
add esp, 4
mov esi, dword [esp + 0x30]
mov edx, ebp
call fcn.10009d90
mov esi, dword [esp + 0x34]
call fcn.10009d90
mov eax, dword [esp + 0x20]
pop ebx
pop edi
pop esi
pop ebp
add esp, 0x8c
ret