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

Disassembly:
mov eax, dword [esi + 0xc]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x5c]
test al, 1
jne 0x34231749
push edx
push ecx
push dword [esi + 0x2c]
or eax, 1
push dword [ebp + 0x1b8]
mov dword [esi + 0x5c], eax
call fcn.34205d4e
cmp eax, ebx
mov dword [ebp - 0x58], eax
je 0x34255263
test eax, eax
jl 0x342318c9
mov ecx, dword [esi + 0x5c]
test cl, 8
jne 0x342ae066
mov eax, dword [esi + 0x50]
test eax, eax
je 0x342474f3
test cx, 0x100
jne 0x342474f3
test cl, 0x40
jne 0x342ae07a
mov dword [esi + 0x54], eax
push esi
push edi
push dword [ebp + 0x1b8]
call fcn.34313bc0
mov ebx, 0xfffff9bd
cmp eax, ebx
mov dword [ebp - 0x58], eax
jne 0x3424591e
test word [esi + 0x5c], 0x800
jne 0x342ae317
mov eax, ebx
jmp 0x342318c9
push ebp
lea ebp, [esp - 0x1b0]
sub esp, 0x230
mov eax, dword [0x342226fc]
xor eax, ebp
mov dword [ebp + 0x1ac], eax
push ebx
push esi
mov esi, dword [ebp + 0x1bc]
xor edx, edx
push edi
mov edi, dword [esi + 0x20]
mov dword [ebp - 0x60], edx
mov eax, dword [edi + 0x2c]
mov ecx, SysReAllocString
cmp dword [ebp + 0x1c0], ecx
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x5c], eax
mov ebx, 0xfffff9bd
je 0x34231713
test word [esi + 0x5c], 0x2000
jne 0x3425523f
mov eax, dword [esi + 0xc]
xor ebx, ebx
cmp eax, ebx
lea ecx, [eax - 1]
mov dword [esi + 0xc], ecx
je 0x342474db
push ebx
push 1
push dword [esi + 0x2c]
push dword [ebp + 0x1b8]
call fcn.34205d4e
cmp eax, ebx
mov dword [ebp - 0x58], eax
jl 0x34247518
mov eax, dword [esi + 0x5c]
test al, 8
jne 0x342ae089
cmp dword [esi + 0x38], 0
jne 0x342ae172
mov eax, dword [esi + 0x3c]
test eax, eax
mov dword [ebp - 0x6c], eax
je 0x34247518
mov eax, dword [esi + 0x5c]
test ax, 0x400
jne 0x342ae292
mov ebx, 0x80000
test ebx, eax
jne 0x342ae1c2
push dword [ebp - 0x6c]
push edi
call fcn.34313bc0
test dword [esi + 0x5c], ebx
mov dword [ebp - 0x58], eax
jne 0x342ae1d5
cmp dword [ebp - 0x58], 0
jge 0x34247518
mov eax, dword [ebp - 0x58]
cmp eax, 0xfffff9bd
je 0x34231824
mov ecx, dword [ebp + 0x1ac]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.341f1b18
add ebp, 0x1b0
leave
ret 0x10
test eax, eax
jl 0x342318c9
mov eax, dword [esi + 0x5c]
test ax, 0x2000
jne 0x3423185f
test eax, 0x20000
je 0x342474f3
mov ecx, eax
shr ecx, 5
and ecx, 1
imul ecx, ecx, 0x14
add ecx, dword [esi + 0x54]
xor ebx, ebx
cmp ecx, dword [esi + 0x58]
jae 0x342ae1e9
mov edx, dword [esi + 0x48]
test edx, edx
jne 0x34245962
test al, 0x40
jne 0x342459ad
mov ebx, eax
shr ebx, 0x10
and ebx, 1
push ebx
mov ebx, eax
shr ebx, 0xf
and ebx, 1
push ebx
mov ebx, eax
and al, 0x40
shr ebx, 1
and ebx, 1
neg al
push ebx
movzx ebx, word [esi + 0x46]
push ebx
sbb eax, eax
not eax
and eax, ecx
push eax
push dword [esi + 0x4c]
push edx
push edi
push dword [esi + 0x2c]
push dword [ebp + 0x1b8]
call fcn.3422f558
test eax, eax
mov dword [ebp - 0x58], eax
jl 0x34247518
xor ebx, ebx
inc ebx
mov eax, dword [esi + 0x5c]
test al, 0x40
jne 0x342ae1f0
test ebx, ebx
je 0x342474f3
movsx eax, word [esi + 0x42]
push eax
push dword [esi + 0x2c]
push dword [ebp + 0x1b8]
call fcn.34249584
test eax, eax
mov dword [ebp - 0x58], eax
jl 0x34247518
jmp 0x342474f3
mov ecx, dword [esi + 0x28]
push 2
pop eax
xor edx, edx
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x78], 0xc
mov dword [ebp - 0x70], ebx
cmp dword [ecx], eax
lea eax, [ebp - 0x78]
setne dl
push eax
push 1
push 1
push dword [ebp + 0x1b8]
dec edx
and edx, 0xfffffe70
add edx, 0x1f4
mov dword [esi + 0xc], edx
or dword [edi + 0x1c], 0x1000
call dword [edi + 0xd8]
and dword [edi + 0x1c], 0xffffefff
cmp eax, ebx
jge 0x34231843
jmp 0x342318c9
cmp dword [edi + 0xd8], ebx
jne 0x342459e3
mov dword [esi + 0xc], SysReAllocString
jmp 0x34231843
mov eax, dword [esi + 0x5c]
test al, 0x40
jne 0x342ae229
mov cl, byte [esi + 0x64]
cmp cl, 0xf
je 0x342ae229
cmp cl, 0x10
jne 0x3423185f
jmp 0x342ae229
mov eax, dword [ebp - 0x58]
cmp eax, 0xfffff9bd
jne 0x342318c9
xor ebx, ebx
cmp dword [esi + 0x50], ebx
je 0x342550e1
mov eax, dword [esi + 0x54]
cmp eax, ebx
je 0x342550e1
mov ecx, dword [esi + 0x5c]
shr ecx, 5
and ecx, 1
inc ecx
imul ecx, ecx, 0x14
add eax, ecx
cmp eax, dword [esi + 0x58]
mov dword [esi + 0x54], eax
jb 0x34231777
test word [esi + 0x5c], 0x800
jne 0x342ae2ed
mov eax, 0xfffff9bd
jmp 0x342318c9
test word [esi + 0x5c], 0x800
je 0x34247563
jmp 0x342ae32c
mov dword [ebp - 0x58], 0xfffff9bd
jmp 0x34247518
jne 0x34231874
jmp 0x34231824
test eax, eax
jge 0x3423189c
jmp 0x342318c9
test word [esi + 0x5c], 0x800
je 0x342317a0
jmp 0x342ae03e
push dword [ebp + 0x1b8]
call fcn.342042c1
xor eax, eax
push eax
push eax
push eax
push 0xffffddcd
push eax
push eax
push eax
push dword [ebp + 0x1b8]
call fcn.342100f1
jmp 0x342317a0
mov eax, dword [esi + 0x60]
mov eax, dword [eax + 0x24]
cmp dword [eax], 6
mov eax, dword [eax + 0x28]
mov dword [esi + 0x68], eax
jmp 0x34231755
cmp dword [esi + 0x78], 0
jne 0x34231774
jmp 0x342474f3
cmp dword [esi + 0x70], 0
je 0x3423186a
mov ebx, dword [esi + 0x60]
mov eax, dword [ebx + 0x1c]
test eax, eax
je 0x342ae0a7
cmp word [eax], 0
jne 0x34231824
push 0
push 2
lea eax, [ebp - 0x68]
push eax
push 0x1fe
lea eax, [ebp - 0x54]
push eax
push dword [ebx + 0x28]
push dword [esi + 0x68]
push dword [ebp + 0x1b8]
call fcn.342034df
test eax, eax
mov dword [ebp - 0x58], eax
jl 0x342ae28a
cmp eax, 0x3ec
je 0x34231824
mov eax, dword [ebx + 0x18]
and eax, 0x7fff
cmp eax, 0xc
jne 0x342ae0f0
xor eax, eax
jmp 0x342ae112
test byte [esi + 0x5c], 0x80
mov eax, dword [edi + 0x20]
je 0x342ae100
or eax, 0x20000000
jmp 0x342ae112
mov cl, byte [esi + 0x64]
cmp cl, 0xf
je 0x342ae10d
cmp cl, 0x10
jne 0x342ae112
or eax, 0x80000000
lea ecx, [ebp - 0x64]
push ecx
push eax
push dword [ebp - 0x68]
lea eax, [ebp - 0x54]
push eax
push dword [esi + 0x70]
push dword [esi + 0x6c]
call sym.acecore.dll_Ordinal_177
mov al, byte [esi + 0x64]
cmp al, 0xf
je 0x342ae163
cmp al, 0x10
je 0x342ae163
cmp dword [ebp - 0x64], 0
movzx eax, al
jne 0x342ae149
test byte [eax + 0x342ae35d], 0x40
jmp 0x3425524b
jle 0x342ae157
test byte [eax + 0x342ae35d], 1
jmp 0x3425524b
test byte [eax + 0x342ae35d], 2
jmp 0x3425524b
cmp dword [ebp - 0x64], 0
je 0x34231874
jmp 0x34231824
test eax, 0x80000
je 0x342ae18f
lea eax, [ebp - 0x60]
push eax
push 0
push dword [ebp - 0x5c]
call fcn.34214812
test eax, eax
jl 0x342318c9
push dword [esi + 0x38]
push edi
call fcn.34313bc0
test dword [esi + 0x5c], 0x80000
mov ebx, eax
mov dword [ebp - 0x58], ebx
je 0x342ae1b5
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x60]
push dword [ebp - 0x5c]
call fcn.34214812
test ebx, ebx
jge 0x34231874
jmp 0x342ae279
lea eax, [ebp - 0x60]
push eax
push 0
push dword [ebp - 0x5c]
call fcn.34214812
jmp 0x34255256
lea eax, [ebp - 0x7c]
push eax
push dword [ebp - 0x60]
push dword [ebp - 0x5c]
call fcn.34214812
jmp 0x342318b1
xor ecx, ecx
jmp 0x34245957
shr eax, 5
not eax
xor ecx, ecx
and eax, 4
test ebx, ebx
sete cl
or eax, ecx
push eax
push dword [esi + 0x78]
push dword [esi + 0x6c]
push dword [esi + 0x2c]
push dword [ebp + 0x1b8]
call fcn.34207c0e
xor ebx, ebx
inc ebx
test eax, eax
mov dword [ebp - 0x58], eax
jge 0x342459b8
jmp 0x34247518
mov ecx, dword [esi + 0x78]
mov edx, dword [esi + 0x70]
cmp ecx, edx
jne 0x342ae240
or eax, 0x80
mov dword [esi + 0x5c], eax
jmp 0x3423185f
add edx, 0xfffffffe
cmp ecx, edx
jae 0x342ae250
and dword [esi + 0x70], 0
jmp 0x3423185f
mov edx, dword [esi + 0x6c]
movzx edx, byte [edx + ecx]
xor eax, eax
cmp byte [esi + 0x64], 0x10
setne al
dec eax
and eax, 0xfffffffb
add eax, 0x2a
sub edx, eax
neg edx
sbb edx, edx
not edx
and edx, ecx
mov dword [esi + 0x70], edx
jmp 0x3423185f
cmp ebx, 0xfffff9bd
jne 0x342317a0
jmp 0x34231824
mov eax, dword [ebp - 0x58]
jmp 0x342318c9
mov ebx, dword [ebp + 0x1b8]
xor edi, edi
push edi
push SysReAllocString
push dword [esi + 0x2c]
push ebx
call fcn.34205d4e
cmp eax, edi
jl 0x342318c9
push edi
push 1
push dword [esi + 0x2c]
push ebx
call fcn.34205d4e
test word [esi + 0x5c], 0x800
je 0x34247563
cmp dword [ebp + 0x1c0], 0x80000000
jne 0x34247563
push ebx
call fcn.342042c1
push edi
push edi
push edi
push 0xffffddcd
push edi
push edi
push edi
push ebx
jmp 0x342ae358
cmp dword [ebp + 0x1c0], 0x80000000
jne 0x34247563
push dword [ebp + 0x1b8]
call fcn.342042c1
xor eax, eax
push eax
push eax
push eax
push 0xffffddcd
push eax
push eax
push eax
jmp 0x342ae352
cmp dword [ebp + 0x1c0], 0x80000000
je 0x342ae03e
jmp 0x342317a0
cmp dword [ebp + 0x1c0], 0x80000000
jne 0x34247563
push dword [ebp + 0x1b8]
call fcn.342042c1
push ebx
push ebx
push ebx
push 0xffffddcd
push ebx
push ebx
push ebx
push dword [ebp + 0x1b8]
call fcn.342100f1
jmp 0x34247563