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

Disassembly:
sub esp, 0xac
mov eax, dword [esp + 0xb0]
mov eax, dword [eax + 8]
push ebx
mov ebx, ecx
lea ecx, [eax*8]
sub ecx, eax
shl ecx, 4
add ecx, eax
mov edx, dword [ebx + ecx*4 + 0x388]
push ebp
lea eax, [ebx + ecx*4 + 0x380]
push esi
mov esi, dword [eax + 0xc]
xor ebp, ebp
xor ecx, ecx
cmp esi, edx
push edi
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], ecx
jge 0x422283
lea edi, [esi + 1]
shl edi, 4
add edi, eax
sub edx, esi
mov eax, dword [edi]
cmp eax, 0xa
je 0x422232
cmp eax, 0xb
je 0x422232
cmp eax, 0xc
je 0x422232
cmp eax, 0xd
je 0x422232
cmp eax, 0xe
je 0x422232
cmp eax, 6
je 0x422232
cmp eax, 7
je 0x422232
cmp eax, 0xf
je 0x422232
cmp eax, 0x11
jne 0x42223c
mov esi, dword [edi + 8]
mov dword [esp + ebp*4 + 0x7c], esi
add ebp, 1
cmp eax, 0x12
je 0x422269
cmp eax, 0x13
je 0x422269
cmp eax, 0x14
je 0x422269
cmp eax, 0x15
je 0x422269
cmp eax, 0x16
je 0x422269
cmp eax, 8
je 0x422269
cmp eax, 9
je 0x422269
cmp eax, 0x17
je 0x422269
cmp eax, 0x19
jne 0x422273
mov eax, dword [edi + 8]
mov dword [esp + ecx*4 + 0x3c], eax
add ecx, 1
add edi, 0x10
sub edx, 1
jne 0x422203
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ebp
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0xc8]
mov edi, dword [esp + 0xc4]
cdq
sub eax, edx
sar eax, 1
xor ebp, ebp
test eax, eax
mov dword [esp + 0x18], eax
jle 0x4222f9
mov ecx, dword [esp + 0x10]
lea edx, [esp + ecx*4 + 0x78]
mov dword [esp + 0x10], edx
mov eax, dword [esp + ebp*4 + 0x7c]
push esi
push edi
push 0x15
push eax
mov ecx, ebx
call fcn.00421510
mov eax, dword [esp + ebp*4 + 0x7c]
push esi
push edi
push eax
mov eax, dword [esp + 0x1c]
mov eax, dword [eax]
push eax
mov ecx, ebx
call fcn.00421510
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
push esi
push edi
push eax
push 0x15
mov ecx, ebx
call fcn.00421510
sub dword [esp + 0x10], 4
add ebp, 1
cmp ebp, dword [esp + 0x18]
jl 0x4222b0
mov ecx, dword [esp + 0x14]
xor ebp, ebp
cmp ecx, 9
mov dword [esp + 0x2c], 3
mov dword [esp + 0x30], 4
mov dword [esp + 0x34], 5
mov dword [esp + 0x38], ebp
mov dword [esp + 0x1c], 1
mov dword [esp + 0x20], 6
mov dword [esp + 0x24], 8
mov dword [esp + 0x28], 7
jl 0x422391
lea esp, [esp]
mov edx, dword [esp + ebp + 0x1c]
mov eax, dword [esp + edx*4 + 0x3c]
mov ecx, dword [esp + ebp + 0x2c]
push esi
push edi
mov dword [esp + 0x1c], eax
mov eax, dword [esp + ecx*4 + 0x44]
push 0x15
push eax
mov ecx, ebx
mov dword [esp + 0x28], eax
call fcn.00421510
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push esi
push edi
push edx
push eax
mov ecx, ebx
call fcn.00421510
mov ecx, dword [esp + 0x14]
push esi
push edi
push ecx
push 0x15
mov ecx, ebx
call fcn.00421510
add ebp, 4
cmp ebp, 0x10
jl 0x422340
jmp 0x4223ed
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
test eax, eax
mov dword [esp + 0x18], eax
jle 0x4223ed
lea edx, [esp + ecx*4 + 0x38]
mov dword [esp + 0x10], edx
mov eax, dword [esp + ebp*4 + 0x3c]
push esi
push edi
push 0x15
push eax
mov ecx, ebx
call fcn.00421510
mov eax, dword [esp + ebp*4 + 0x3c]
push esi
push edi
push eax
mov eax, dword [esp + 0x1c]
mov eax, dword [eax]
push eax
mov ecx, ebx
call fcn.00421510
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
push esi
push edi
push eax
push 0x15
mov ecx, ebx
call fcn.00421510
sub dword [esp + 0x10], 4
add ebp, 1
cmp ebp, dword [esp + 0x18]
jl 0x4223a8
mov ecx, dword [ebx + 0x148]
mov edx, dword [ecx]
call dword [edx + 0x5c]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xac
ret 0xc