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

Disassembly:
sub esp, 0x58
mov eax, dword [0x97efc0]
xor eax, esp
mov dword [esp + 0x54], eax
push ebx
push ebp
mov ebp, dword [esp + 0x6c]
push esi
mov esi, dword [esp + 0x6c]
push edi
mov edi, dword [esp + 0x6c]
push esi
push 0x1b6
push edi
call fcn.0041d800
push esi
push 0x1b7
push edi
mov dword [esp + 0x3c], eax
call fcn.0041d800
mov esi, dword [edi + 0x10]
add esp, 0x18
cmp byte [esp + 0x78], 0
mov ebx, eax
mov dword [esp + 0x28], ebx
push 0x20
push 0
je 0x4226a0
push 0x1f
call fcn.0040fcf0
push 0x20
push 1
push esi
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x42268e
mov eax, dword [esp + 0x10]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x14]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
add esi, 0x18
push esi
push ebx
push 0x153
push edi
call fcn.0041d850
add esp, 0x10
jmp 0x4226d7
push 0
call fcn.0040fcf0
push 0x20
push 1
push esi
mov ebx, eax
mov dword [esp + 0x28], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x4226d7
mov eax, dword [esp + 0x10]
push esi
mov dword [esi + 0x30], ebx
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
lea eax, [esi + 0x18]
push ebp
push 0x1b6
push edi
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
call fcn.0041d800
push ebp
push 0x1b7
push edi
mov dword [esp + 0x4c], eax
call fcn.0041d800
mov esi, dword [edi + 0x10]
add esp, 0x18
cmp byte [esp + 0x78], 0
mov ebx, eax
mov dword [esp + 0x38], ebx
push 0x20
push 0
je 0x422763
push 0x1f
call fcn.0040fcf0
push 0x20
push 1
push esi
mov ebp, eax
mov dword [esp + 0x28], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x422749
mov eax, dword [esp + 0x10]
push esi
mov dword [esi + 0x30], ebp
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
add esi, 0x18
push esi
push ebx
push 0x153
push edi
call fcn.0041d850
add esp, 0x10
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], eax
jmp 0x42279c
push 0
call fcn.0040fcf0
push 0x20
push 1
push esi
mov ebx, eax
mov ebp, edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x422794
push esi
mov dword [esi + 0x30], ebx
push edi
mov dword [esi + 0x34], ebp
call fcn.0041dbe0
add esp, 8
add esi, 0x18
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], esi
push 0x20
xorps xmm0, xmm0
mov dword [esp + 0x48], 0
push 0
push 0x20
movups xmmword [esp + 0x54], xmm0
mov dword [esp + 0x6c], 0
movq qword [esp + 0x64], xmm0
call fcn.0040fcf0
add esp, 0xc
mov dword [esp + 0x18], eax
xor ecx, ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x10], ecx
mov edx, dword [esp + ecx + 0x24]
lea ebp, [esp + 0x44]
xor eax, eax
mov dword [esp + 0x20], edx
xor ebx, ebx
mov dword [esp + 0x14], eax
add ebp, ecx
nop dword [eax]
push dword [esp + eax*4 + 0x34]
push edx
push 0x1ac
push edi
call fcn.0041d850
mov esi, eax
add esp, 0x10
mov eax, dword [ebp]
test eax, eax
je 0x422833
cmp byte [eax + 0x11], 0x40
je 0x422821
push eax
push 0x18a
push edi
call fcn.0041d800
add esp, 0xc
push eax
push esi
push 0x122
push edi
call fcn.0041d850
add esp, 0x10
mov esi, eax
test ebx, ebx
je 0x422849
push ebx
push esi
push 0x122
push edi
call fcn.0041d850
add esp, 0x10
mov esi, eax
cmp byte [esi + 0x11], 0x20
jne 0x422853
mov eax, esi
jmp 0x422862
push esi
push 0x189
push edi
call fcn.0041d800
add esp, 0xc
push 0x20
push 1
push dword [edi + 0x10]
mov dword [ebp], eax
call fcn.00409bc0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x422895
mov eax, dword [esp + 0x18]
mov dword [ebx + 0x30], eax
mov eax, dword [esp + 0x1c]
push ebx
push edi
mov dword [ebx + 0x34], eax
call fcn.0041dbe0
add esp, 8
add ebx, 0x18
push ebx
push esi
push 0x1c5
push edi
call fcn.0041d850
mov edx, dword [esp + 0x30]
mov ebx, eax
mov eax, dword [esp + 0x24]
add esp, 0x10
inc eax
add ebp, 4
mov dword [esp + 0x14], eax
cmp eax, 4
jb 0x4227f0
cmp byte [ebx + 0x11], 0x20
je 0x4228d7
push ebx
push 0x189
push edi
call fcn.0041d800
add esp, 0xc
mov ebx, eax
mov ecx, dword [esp + 0x10]
mov dword [esp + ecx + 0x54], ebx
add ecx, 4
mov dword [esp + 0x10], ecx
cmp ecx, 0x10
jb 0x4227d6
push dword [esp + 0x50]
push dword [esp + 0x50]
push 0x168
push edi
call fcn.0041d850
mov ecx, dword [esp + 0x74]
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004eec95
add esp, 0x58
ret