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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0xf4
mov eax, dword [0x504608]
xor eax, esp
mov dword [esp + 0xf0], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
push ebx
push esi
mov esi, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 8]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], edx
test eax, eax
je 0x41a4e2
test edx, edx
je 0x41a4e2
xor ecx, ecx
dec eax
mov word [edi], cx
xor cl, cl
cmp word [edx], 0
lea eax, [edi + eax*2]
mov ebx, edi
mov dword [esp + 0x20], eax
mov byte [esp + 0x17], cl
je 0x41a4a5
lea edi, [esi - 4]
add esi, 0xfffffff8
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], esi
mov edi, 0x25
test cl, cl
jne 0x41a151
movzx ecx, word [edx]
cmp ecx, 0x25
je 0x41a12d
mov word [ebx], cx
add edx, 2
add ebx, 2
mov dword [esp + 0x18], edx
cmp ebx, eax
je 0x41a4a1
mov cl, byte [esp + 0x17]
jmp 0x41a497
cmp word [edx + 2], 0x25
lea ecx, [edx + 2]
jne 0x41a13f
mov word [ebx], di
add edx, 4
jmp 0x41a115
xor edx, edx
mov word [ebx], dx
mov edx, ecx
mov dword [esp + 0x18], edx
mov cl, 1
jmp 0x41a493
movzx eax, word [edx]
xor esi, esi
mov byte [esp + 0x17], 0
mov dword [esp + 0x30], esi
mov edi, edx
cmp eax, 0x30
jne 0x41a17f
movzx eax, word [edx + 2]
add edx, 2
mov byte [esp + 0x17], 1
mov dword [esp + 0x18], edx
test ax, ax
je 0x41a4a1
cmp ax, 0x30
jb 0x41a1aa
cmp ax, 0x39
ja 0x41a1a2
lea ecx, [esi + esi*4]
add edx, 2
movzx esi, ax
movzx eax, word [edx]
add esi, 0xffffffd0
lea esi, [esi + ecx*2]
cmp eax, 0x30
jae 0x41a185
mov dword [esp + 0x30], esi
mov dword [esp + 0x18], edx
cmp word [edx], 0x2e
jne 0x41a1d6
movzx eax, word [edx + 2]
add edx, 2
mov dword [esp + 0x18], edx
cmp eax, 0x30
jb 0x41a1d6
cmp ax, 0x39
ja 0x41a1d2
movzx eax, word [edx + 2]
add edx, 2
cmp eax, 0x30
jae 0x41a1c0
mov dword [esp + 0x18], edx
movzx eax, word [edx]
test ax, ax
je 0x41a4a1
cmp eax, 0x6c
jne 0x41a1fb
movzx eax, word [edx + 2]
add edx, 2
mov dword [esp + 0x18], edx
test ax, ax
je 0x41a4a1
cmp ax, 0x73
jne 0x41a29e
mov eax, dword [esp + 0x24]
add dword [esp + 0x28], 4
mov edi, dword [eax + 4]
add eax, 4
mov dword [esp + 0x24], eax
test edi, edi
je 0x41a4e2
mov ecx, edi
lea eax, [ecx + 2]
mov dword [esp + 0x30], eax
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41a230
sub ecx, dword [esp + 0x30]
sar ecx, 1
cmp ecx, esi
jae 0x41a267
sub esi, ecx
mov ecx, dword [esp + 0x20]
je 0x41a26b
mov eax, 0x20
mov word [ebx], ax
add ebx, 2
dec esi
cmp ebx, ecx
je 0x41a4a1
test esi, esi
jne 0x41a252
jmp 0x41a26b
mov ecx, dword [esp + 0x20]
cmp word [edi], 0
je 0x41a47b
sub edi, ebx
jmp 0x41a280
mov ax, word [edi + ebx]
mov word [ebx], ax
add ebx, 2
cmp ebx, ecx
je 0x41a4a1
cmp word [edi + ebx], 0
jne 0x41a280
jmp 0x41a47b
cmp ax, 0x69
je 0x41a39c
cmp ax, 0x64
je 0x41a39c
cmp ax, 0x75
je 0x41a4fe
cmp ax, 0x66
jne 0x41a488
mov eax, dword [esp + 0x28]
add dword [esp + 0x24], 8
movsd xmm0, qword [eax + 8]
add edx, 2
mov esi, edx
add eax, 8
sub esi, edi
sar esi, 1
mov dword [esp + 0x28], eax
inc esi
push esi
lea eax, [edi - 2]
push eax
lea eax, [esp + 0xc0]
push eax
mov dword [esp + 0x24], edx
movsd qword [esp + 0x3c], xmm0
call fcn.004a089f
add esi, esi
add esp, 0xc
cmp esi, 0x40
jae 0x41a4f9
movsd xmm0, qword [esp + 0x30]
xor eax, eax
sub esp, 8
mov word [esp + esi + 0xc0], ax
movsd qword [esp], xmm0
lea eax, [esp + 0xc0]
push eax
lea eax, [esp + 0x84]
push eax
call fcn.00419f80
lea edx, [esp + 0x88]
add esp, 0x10
mov esi, edx
jmp 0x41a350
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x41a350
sub edx, esi
lea edi, [ebx - 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x41a360
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x78]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41a381
sub ecx, edx
mov edx, dword [esp + 0x18]
sar ecx, 1
lea ebx, [ebx + ecx*2]
jmp 0x41a482
mov eax, dword [esp + 0x24]
add dword [esp + 0x28], 4
mov edi, dword [eax + 4]
add eax, 4
xor ecx, ecx
mov dword [esp + 0x24], eax
cmp edi, 0xa
jl 0x41a3f8
mov esi, ecx
jmp 0x41a3c0
mov eax, 0x66666667
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
inc esi
lea eax, [ecx + ecx*4]
add eax, eax
sub edi, eax
add edi, 0x30
mov word [esp + esi*2 + 0x36], di
mov edi, ecx
cmp edi, 0xa
jge 0x41a3c0
mov edx, dword [esp + 0x18]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
lea eax, [edi + 0x30]
mov word [esp + ecx*2 + 0x38], ax
inc ecx
cmp ecx, esi
jae 0x41a45a
xor eax, eax
cmp byte [esp + 0x17], al
je 0x41a43a
sub esi, ecx
je 0x41a45a
mov edi, dword [esp + 0x20]
jmp 0x41a420
mov edx, 0x30
mov word [ebx], dx
mov edx, dword [esp + 0x18]
add ebx, 2
cmp ebx, edi
je 0x41a4a1
inc eax
cmp eax, esi
jb 0x41a420
jmp 0x41a45a
sub esi, ecx
je 0x41a45a
mov edi, dword [esp + 0x20]
mov edx, 0x20
mov word [ebx], dx
mov edx, dword [esp + 0x18]
add ebx, 2
cmp ebx, edi
je 0x41a4a1
inc eax
cmp eax, esi
jb 0x41a442
xor edi, edi
test ecx, ecx
je 0x41a47b
lea esi, [esp + ecx*2 + 0x36]
mov ax, word [esi]
mov word [ebx], ax
add ebx, 2
cmp ebx, dword [esp + 0x20]
je 0x41a4a1
inc edi
sub esi, 2
cmp edi, ecx
jb 0x41a464
add edx, 2
mov dword [esp + 0x18], edx
cmp word [edx], 0
je 0x41a4a1
mov eax, dword [esp + 0x20]
xor cl, cl
mov edi, 0x25
mov byte [esp + 0x17], cl
cmp word [edx], 0
jne 0x41a103
mov edi, dword [esp + 0x1c]
xor eax, eax
mov word [ebx], ax
cmp word [edx], ax
je 0x41a4c7
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xf0]
xor ecx, esp
call fcn.0049a134
mov esp, ebp
pop ebp
ret
sub ebx, edi
sar ebx, 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xf0]
xor ecx, esp
call fcn.0049a134
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0xfc]
pop edi
pop esi
pop ebx
xor ecx, esp
xor eax, eax
call fcn.0049a134
mov esp, ebp
pop ebp
ret
call fcn.0049f2af
call fcn.004a085c
int3