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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, ecx
mov ecx, dword [ebp + 8]
push edi
lea ebx, [eax + 0xf]
mov dword [esi + 0xc4], ecx
lea edi, [ecx + 0xf]
mov dword [esi + 0xc8], eax
and edi, 0xfffffff0
and ebx, 0xfffffff0
cmp dword [esi + 0xc4], edi
jne 0x419cbc
cmp eax, ebx
jne 0x419cbc
push 1
pop eax
jmp 0x419cbe
xor eax, eax
test eax, eax
mov dword [esi + 0xdc], eax
je 0x419cde
mov dword [esi + 0xb68], 0x1c214ee1
mov dword [esi + 0xb6c], 0x1c215257
jmp 0x419cf2
mov dword [esi + 0xb68], 0x1c214fb0
mov dword [esi + 0xb6c], 0x1c21535a
cmp dword [esi + 8], 4
jne 0x419d15
push ebx
mov dword [esi + 0xb40], 0xf
push edi
mov ecx, esi
mov dword [esi + 0xb44], 0x100
call fcn.00419a09
xor eax, eax
mov dword [esi + 0x18], ebx
mov dword [esi + 0x10], eax
mov dword [esi + 0xc], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [esi + 0x14], edi
lea eax, [ebp - 0x18]
sar edi, 1
sar ebx, 1
push eax
lea ecx, [esi + 0x1c]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0xc], ebx
call fcn.0040c29d
mov ecx, esi
mov dword [esi + 0xb00], 0xffffffc1
mov dword [esi + 0xb04], 0x3f
call fcn.00440572
xor ebx, ebx
mov dword [ebp + 8], eax
cmp eax, ebx
jne 0x41a142
mov edi, dword [esi + 0x78]
lea eax, [edi + edi]
push eax
call fcn.00420930
cmp eax, ebx
pop ecx
je 0x419d90
lea edx, [edi - 1]
mov ecx, eax
cmp edx, ebx
jl 0x419d92
inc edx
and byte [ecx + 1], 0
and byte [ecx], 0
inc ecx
inc ecx
dec edx
jne 0x419d82
jmp 0x419d92
xor eax, eax
cmp eax, ebx
mov dword [esi + 0x594], eax
je 0x41a13f
mov eax, dword [esi + 0x10c]
lea eax, [eax*8 - 8]
mov dword [esi + 0xb38], eax
mov eax, dword [esi + 0x110]
lea eax, [eax*4 - 4]
mov dword [esi + 0xb3c], eax
mov eax, dword [esi + 0x70]
lea eax, [eax + eax*2]
shl eax, 5
mov dword [esi + 0xb14], eax
mov eax, dword [esi + 0x78]
lea eax, [eax + eax*2]
shl eax, 7
push eax
call fcn.00420930
cmp eax, ebx
pop ecx
mov dword [esi + 0xb18], eax
je 0x41a13f
mov eax, dword [esi + 0x78]
lea eax, [eax + eax*8]
shl eax, 4
push eax
call fcn.00420930
cmp eax, ebx
pop ecx
mov dword [esi + 0xb1c], eax
je 0x41a13f
push 0x40
call fcn.00420930
pop ecx
mov dword [esi + 0xb20], eax
push 0x40
call fcn.00420930
cmp dword [esi + 0xb1c], ebx
pop ecx
mov dword [esi + 0xb24], eax
je 0x41a13f
cmp eax, ebx
je 0x41a13f
mov edi, dword [esi + 0xb20]
push 0x10
pop ecx
xor eax, eax
rep stosd dword es:[edi], eax
mov edi, dword [esi + 0xb24]
push 0x10
pop ecx
rep stosd dword es:[edi], eax
cmp dword [esi + 8], 4
mov ecx, dword [esi + 0xb20]
jne 0x419e92
mov eax, 0x400
mov dword [ecx + 0x20], eax
mov ecx, dword [esi + 0xb20]
mov dword [ecx], eax
mov ecx, dword [esi + 0xb24]
mov dword [ecx + 0x20], eax
mov ecx, dword [esi + 0xb24]
mov dword [ecx], eax
mov dword [esi + 0xb48], 1
jmp 0x419eb9
mov eax, 0x80
mov dword [ecx + 0x20], eax
mov ecx, dword [esi + 0xb20]
mov dword [ecx], eax
mov ecx, dword [esi + 0xb24]
mov dword [ecx + 0x20], eax
mov ecx, dword [esi + 0xb24]
mov dword [ecx], eax
mov dword [esi + 0xb48], ebx
cmp dword [esi + 0x78], ebx
mov dword [ebp - 8], ebx
jbe 0x41a0b0
mov dword [ebp - 4], ebx
mov dword [ebp + 0xc], ebx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 4]
add eax, dword [esi + 0xb1c]
add ecx, dword [esi + 0xb18]
xor edi, edi
mov edx, edi
sub edx, ebx
je 0x41a03e
dec edx
je 0x41a003
dec edx
je 0x419fd1
dec edx
je 0x419fae
dec edx
je 0x419f61
dec edx
jne 0x41a086
mov edx, dword [esi + 0xb24]
mov ebx, ecx
mov dword [eax + 0x78], edx
lea edx, [ecx - 0x180]
mov dword [eax + 0x7c], edx
mov edx, dword [esi + 0xb24]
mov dword [eax + 0x80], edx
mov edx, dword [esi + 0xb14]
shl edx, 2
sub ebx, edx
mov dword [eax + 0x84], ebx
mov edx, dword [esi + 0xb24]
mov dword [eax + 0x88], edx
mov edx, dword [esi + 0xb14]
mov ebx, ecx
lea edx, [edx*4 + 0x180]
sub ebx, edx
mov dword [eax + 0x8c], ebx
jmp 0x41a084
mov edx, dword [esi + 0xb24]
mov ebx, ecx
mov dword [eax + 0x60], edx
lea edx, [ecx - 0x180]
mov dword [eax + 0x64], edx
mov edx, dword [esi + 0xb24]
mov dword [eax + 0x68], edx
mov edx, dword [esi + 0xb14]
shl edx, 2
sub ebx, edx
mov dword [eax + 0x6c], ebx
mov edx, dword [esi + 0xb24]
mov dword [eax + 0x70], edx
mov edx, dword [esi + 0xb14]
mov ebx, ecx
lea edx, [edx*4 + 0x180]
sub ebx, edx
mov dword [eax + 0x74], ebx
jmp 0x41a084
lea edx, [ecx - 0x40]
mov dword [eax + 0x4c], edx
mov dword [eax + 0x48], edx
lea edx, [ecx - 0x80]
mov dword [eax + 0x54], edx
mov dword [eax + 0x50], edx
lea edx, [ecx - 0xc0]
mov dword [eax + 0x5c], edx
mov dword [eax + 0x58], edx
jmp 0x41a086
mov edx, dword [esi + 0xb20]
mov dword [eax + 0x30], edx
lea edx, [ecx - 0x140]
mov dword [eax + 0x34], edx
lea edx, [ecx - 0x80]
mov dword [eax + 0x3c], edx
mov dword [eax + 0x38], edx
mov edx, dword [esi + 0xb20]
mov dword [eax + 0x40], edx
lea edx, [ecx - 0x1c0]
mov dword [eax + 0x44], edx
jmp 0x41a086
lea edx, [ecx - 0x40]
push 0x20
mov dword [eax + 0x1c], edx
mov dword [eax + 0x18], edx
mov edx, dword [esi + 0xb20]
mov dword [eax + 0x20], edx
pop edx
sub edx, dword [esi + 0xb14]
push 0x10
lea edx, [ecx + edx*4]
mov dword [eax + 0x24], edx
mov edx, dword [esi + 0xb20]
mov dword [eax + 0x28], edx
pop edx
sub edx, dword [esi + 0xb14]
lea edx, [ecx + edx*4]
mov dword [eax + 0x2c], edx
jmp 0x41a086
mov edx, dword [esi + 0xb20]
push 0x20
mov dword [eax], edx
lea edx, [ecx - 0x140]
mov dword [eax + 4], edx
mov edx, dword [esi + 0xb20]
mov dword [eax + 8], edx
pop edx
sub edx, dword [esi + 0xb14]
mov ebx, ecx
lea edx, [ecx + edx*4]
mov dword [eax + 0xc], edx
mov edx, dword [esi + 0xb20]
mov dword [eax + 0x10], edx
mov edx, dword [esi + 0xb14]
lea edx, [edx*4 + 0xc0]
sub ebx, edx
mov dword [eax + 0x14], ebx
xor ebx, ebx
add ecx, 0x40
inc edi
cmp edi, 6
jl 0x419edf
inc dword [ebp - 8]
add dword [ebp + 0xc], 0x90
mov eax, dword [ebp - 8]
add dword [ebp - 4], 0x180
cmp eax, dword [esi + 0x78]
jb 0x419ecb
push 0x50
call fcn.00420930
cmp eax, ebx
pop ecx
je 0x41a0d4
mov edx, dword [esi + 0xb0]
lea ecx, [edx + 0x10]
push ecx
lea ecx, [ebp + 8]
push edx
push ecx
mov ecx, eax
call fcn.00420b11
jmp 0x41a0d6
xor eax, eax
cmp dword [ebp + 8], ebx
mov dword [esi + 0x598], eax
jne 0x41a1ed
push ebx
mov ecx, eax
call fcn.00420ae2
mov eax, dword [eax]
mov ecx, dword [esi + 0x598]
push 1
mov dword [esi + 0x7a4], eax
call fcn.00420ae2
mov eax, dword [eax]
mov ecx, dword [esi + 0x598]
push 2
mov dword [esi + 0x7a8], eax
call fcn.00420ae2
mov eax, dword [eax]
push dword [esi + 0x78]
mov dword [esi + 0x7ac], eax
call fcn.00420930
mov edx, eax
lea edi, [esi + 0x7bc]
cmp edx, ebx
pop ecx
mov dword [edi], edx
jne 0x41a149
push ebx
call fcn.00420936
pop ecx
mov dword [edi], ebx
push 0xfffffffffffffffd
pop eax
pop edi
pop esi
pop ebx
leave
ret 8
mov ecx, dword [esi + 0x78]
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
push 0xb04
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esi + 0x10c]
mov ecx, eax
shl ecx, 4
mov dword [esi + 0xb08], ecx
mov ecx, dword [esi + 0x110]
shl ecx, 3
lea eax, [eax*8 - 8]
mov dword [esi + 0xb0c], ecx
mov dword [esi + 0xb10], eax
call fcn.00420930
mov edi, eax
pop ecx
cmp edi, ebx
mov dword [esi + 0x590], edi
je 0x41a13f
mov ecx, 0x2c1
xor eax, eax
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x590]
push 0x50
add eax, 0x580
mov dword [esi + 0x58c], eax
call fcn.00420930
cmp eax, ebx
pop ecx
je 0x41a1e0
mov edx, dword [esi + 0xb0]
lea ecx, [edx + 0x10]
push ecx
lea ecx, [ebp + 8]
push edx
push ecx
mov ecx, eax
call fcn.00420b11
jmp 0x41a1e2
xor eax, eax
cmp dword [ebp + 8], ebx
mov dword [esi + 0x59c], eax
je 0x41a1f5
mov eax, dword [ebp + 8]
jmp 0x41a142
push ebx
mov ecx, eax
call fcn.00420ae2
mov eax, dword [eax]
mov ecx, dword [esi + 0x59c]
push 1
mov dword [esi + 0x7b0], eax
call fcn.00420ae2
mov eax, dword [eax]
mov ecx, dword [esi + 0x59c]
push 2
mov dword [esi + 0x7b4], eax
call fcn.00420ae2
mov eax, dword [eax]
mov dword [esi + 0x7b8], eax
xor eax, eax
jmp 0x41a142