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

Disassembly:
push 0xffffffffffffffff
push 0x4a52f0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x44
push ebx
push ebp
push esi
push edi
mov al, byte [esp + 0x78]
xor ebx, ebx
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x34], al
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
push ebx
lea ecx, [esp + 0x18]
mov byte [esp + 0x60], 1
call fcn.00475930
push ebx
lea ecx, [esp + 0x30]
mov byte [esp + 0x60], 2
call fcn.00475930
push ebx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x60], 3
call fcn.00475930
push ebx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x60], 4
call fcn.00475930
push ebx
lea ecx, [esp + 0x28]
mov byte [esp + 0x60], 5
call fcn.00475930
push ebx
lea ecx, [esp + 0x24]
mov byte [esp + 0x60], 6
call fcn.00475930
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x60], 7
call fcn.00475930
push ecx
mov byte [esp + 0x60], 8
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
call fcn.00475930
mov esi, dword [esp + 0x78]
mov ecx, esi
call fcn.00475ae0
mov edi, 0x4c4510
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
mov edi, dword [esp + 0x7c]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edi
push ebp
call fcn.0041c2e0
test al, al
je 0x41a3fa
mov edi, dword [edi + 4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x4c4510
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x78]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [eax + 4]
mov esi, dword [esp + 0x74]
mov dword [eax + 8], ebp
add ebp, ecx
mov byte [ebp], bl
push 0x13
lea ecx, [esp + 0x68]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
call fcn.00475910
lea ecx, [esp + 0x30]
call fcn.00475ae0
push 6
lea ecx, [esp + 0x68]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
call fcn.00475910
lea ecx, [esp + 0x2c]
call fcn.00475ae0
lea eax, [esp + 0x18]
lea edx, [esp + 0x2c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x7c], esp
push edx
call fcn.00475910
mov ecx, dword [0x4c4550]
call fcn.00436d90
cmp ax, 1
jne 0x41a7ff
lea ecx, [esp + 0x18]
mov edi, 2
call fcn.00475d00
cmp ax, di
jle 0x41a49b
push edi
lea ecx, [esp + 0x1c]
call fcn.00475c70
push eax
mov ecx, esi
call fcn.00475ce0
lea ecx, [esp + 0x18]
inc edi
call fcn.00475d00
cmp di, ax
jl 0x41a47a
lea eax, [esp + 0x24]
push 2
push eax
push ecx
lea edx, [esp + 0x34]
mov ecx, esp
mov dword [esp + 0x80], esp
push edx
call fcn.00475910
push ecx
lea eax, [esp + 0x28]
mov ecx, esp
mov dword [esp + 0x40], esp
push eax
mov byte [esp + 0x70], 9
call fcn.00475910
mov ecx, dword [0x4c4550]
mov byte [esp + 0x6c], 8
call fcn.00437240
cmp ax, bx
je 0x41a7ff
push ecx
mov ecx, esp
mov dword [esp + 0x78], esp
push ebx
call fcn.00475930
lea ecx, [esp + 0x18]
call fcn.00475ae0
push 0x41
lea ecx, [esp + 0x18]
call fcn.00475ce0
mov cl, byte [0x4c4564]
push ecx
lea ecx, [esp + 0x18]
call fcn.00475ce0
mov edx, dword [esp + 0x68]
lea ecx, [esp + 0x14]
add edx, 0x28
push edx
call fcn.00475a90
push ebx
lea ecx, [esp + 0x18]
call fcn.00475ce0
push ebx
lea ecx, [esp + 0x18]
call fcn.00475ce0
push 5
lea ecx, [esp + 0x18]
call fcn.00475c70
inc al
lea ecx, [esp + 0x14]
push eax
push 5
call fcn.00475c80
push ecx
lea eax, [esp + 0x18]
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
call fcn.00475910
sub esp, 0x10
lea edx, [esp + 0x27]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.T16.DB
mov byte [esp + 0x78], 0xa
call fcn.0041b350
mov ecx, dword [0x4c4560]
lea eax, [esp + 0x48]
push eax
mov byte [esp + 0x74], 8
call fcn.0042cec0
cmp ax, bx
je 0x41a7ff
push 1
lea ecx, [esp + 0x38]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
call fcn.00475910
lea ecx, [esp + 0x24]
call fcn.00475ae0
push 2
lea ecx, [esp + 0x38]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
call fcn.00475910
lea ecx, [esp + 0x20]
call fcn.00475ae0
push ebx
lea ecx, [esp + 0x24]
call fcn.00475c70
mov dl, al
push ebx
lea ecx, [esp + 0x28]
mov byte [esp + 0x78], dl
call fcn.00475c70
mov cl, byte [esp + 0x74]
cmp cl, al
jne 0x41a53b
mov ecx, dword [0x4c4560]
lea edx, [esp + 0x1c]
push edx
call fcn.0042e470
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
call fcn.00475910
lea ecx, [esp + 0x48]
push ecx
call fcn.00477540
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x4ad134]
mov edi, ecx
mov byte [esp + 0x5c], 0xb
cmp eax, edi
mov dword [esp + 0x74], edi
jae 0x41a655
mov dword [esp + 0x74], eax
mov edi, eax
mov ebp, dword [esp + 0x78]
cmp ebp, esi
jne 0x41a674
push eax
push edi
mov ecx, ebp
call fcn.0041c1a0
push ebx
push ebx
mov ecx, ebp
call fcn.0041c1a0
jmp 0x41a6f7
cmp edi, ebx
jbe 0x41a6bc
cmp edi, ecx
jne 0x41a6bc
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x41a688
mov eax, 0x4ad138
cmp byte [eax - 1], 0xfe
jae 0x41a6bc
push 1
mov ecx, ebp
call fcn.0041ba60
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x41a6a3
mov eax, 0x4ad138
mov dword [ebp + 4], eax
mov ecx, dword [esi + 8]
mov dword [ebp + 8], ecx
mov esi, dword [esi + 0xc]
mov dword [ebp + 0xc], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x41a6f7
push 1
push edi
mov ecx, ebp
call fcn.0041c2e0
test al, al
je 0x41a6f7
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x41a6d6
mov esi, 0x4ad138
mov eax, dword [ebp + 4]
mov ecx, edi
mov edx, ecx
mov edi, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x74]
mov ecx, edx
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0041c2c0
mov eax, dword [esp + 0x48]
cmp eax, ebx
je 0x41a71c
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x41a713
cmp al, 0xff
je 0x41a713
dec al
mov byte [ecx], al
jmp 0x41a71c
push ecx
call fcn.00498130
add esp, 4
lea ecx, [esp + 0x1c]
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov byte [esp + 0x5c], 7
call fcn.00475a40
lea ecx, [esp + 0x20]
mov byte [esp + 0x5c], 6
call fcn.00475a40
lea ecx, [esp + 0x24]
mov byte [esp + 0x5c], 5
call fcn.00475a40
lea ecx, [esp + 0x18]
mov byte [esp + 0x5c], 4
call fcn.00475a40
lea ecx, [esp + 0x28]
mov byte [esp + 0x5c], 3
call fcn.00475a40
lea ecx, [esp + 0x2c]
mov byte [esp + 0x5c], 2
call fcn.00475a40
lea ecx, [esp + 0x14]
mov byte [esp + 0x5c], 1
call fcn.00475a40
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x38]
cmp eax, ecx
mov byte [esp + 0x5c], bl
mov edi, ecx
mov esi, eax
je 0x41a7b0
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41a79e
mov eax, dword [esp + 0x38]
push eax
call fcn.00498130
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
add esp, 4
cmp esi, eax
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x5c], 0xffffffff
mov edi, eax
je 0x41a7ed
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41a7db
mov esi, dword [esp + 0x68]
push esi
call fcn.00498130
add esp, 4
mov ax, 1
jmp 0x41a8d0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x5c], 7
call fcn.00475a40
lea ecx, [esp + 0x20]
mov byte [esp + 0x5c], 6
call fcn.00475a40
lea ecx, [esp + 0x24]
mov byte [esp + 0x5c], 5
call fcn.00475a40
lea ecx, [esp + 0x18]
mov byte [esp + 0x5c], 4
call fcn.00475a40
lea ecx, [esp + 0x28]
mov byte [esp + 0x5c], 3
call fcn.00475a40
lea ecx, [esp + 0x2c]
mov byte [esp + 0x5c], 2
call fcn.00475a40
lea ecx, [esp + 0x14]
mov byte [esp + 0x5c], 1
call fcn.00475a40
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x38]
cmp eax, ecx
mov byte [esp + 0x5c], bl
mov edi, ecx
mov esi, eax
je 0x41a887
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41a875
mov eax, dword [esp + 0x38]
push eax
call fcn.00498130
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
add esp, 4
cmp esi, eax
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x5c], 0xffffffff
mov edi, eax
je 0x41a8c4
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41a8b2
mov esi, dword [esp + 0x68]
push esi
call fcn.00498130
add esp, 4
xor ax, ax
mov ecx, dword [esp + 0x54]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x50
ret 0x18