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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x108
mov eax, dword [ebp + 8]
mov byte [esp + 0xf7], 0x8b
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe0], 0x6ea7
movzx ecx, word [esp + 0xee]
mov dx, cx
add ecx, ecx
mov si, cx
mov word [esp + 0xee], si
mov word [esp + 0xde], 0x44d0
mov ecx, dword [esp + 0xf8]
mov edi, dword [esp + 0xfc]
and ecx, 0x4f7b
mov dword [esp + 0xf8], ecx
mov dword [esp + 0xfc], 0
mov dword [esp + 0xd8], 0x6a81
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb0], 0x2ef5
mov si, word [esp + 0xde]
xor si, 0x2e02
mov word [esp + 0x9e], si
mov si, word [esp + 0xde]
add si, 0xcadf
mov ecx, dword [esp + 0xf0]
add ecx, 0x6ac7
mov dword [esp + 0xf0], ecx
mov word [esp + 0xae], si
mov ecx, dword [esp + 0xe0]
mov ebx, dword [esp + 0xe4]
xor ecx, 0x41b9
mov dword [esp + 0x84], ebx
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0xe0]
mov ebx, dword [esp + 0xe4]
xor esi, esi
mov dword [esp + 0x44], eax
mov eax, 0x7670
sub eax, ecx
mov ecx, esi
sbb ecx, ebx
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov ebx, dword [esp + 0xe0]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x3c], eax
mov eax, 0x84c3
sub eax, ebx
mov ebx, dword [esp + 0x3c]
sbb esi, ebx
mov ebx, dword [esp + 0x40]
sub eax, ebx
sbb esi, ecx
mov dword [esp + 0x38], esi
mov word [esp + 0x36], dx
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
jae 0x401e5f
jmp 0x401f4e
mov eax, dword [esp + 0xc0]
mov word [esp + 0xee], 0
mov ecx, dword [esp + 0xbc]
mov edx, esp
mov dword [edx + 8], eax
mov dword [edx + 4], ecx
mov dword [edx], ecx
call fcn.004021b0
sub esp, 0xc
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xbc]
add ecx, 0xa407
mov edx, dword [esp + 0xd8]
add edx, 0x2677f
mov dword [eax], ecx
mov bl, byte [esp + 0xf6]
mov bh, 0x97
sub bh, bl
mov eax, dword [esp + 0xcc]
mov byte [esp + 0xf6], bh
mov dword [eax + 4], edx
mov bl, byte [esp + 0xf6]
mov al, bl
mul bl
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xd8]
add edx, 0xffffb6bf
mov esi, dword [esp + 0xbc]
add esi, 0x4782
mov byte [esp + 0xf6], al
mov dword [ecx + 8], esi
mov ecx, dword [esp + 0xcc]
mov byte [esp + 0xf6], 0xf7
mov dword [ecx + 0xc], edx
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov eax, dword [esp + 0xd8]
add eax, 0xffff9580
add eax, dword [esp + 0x90]
mov dword [esp + 0x90], eax
jmp 0x401e04
cmp dword [esp + 0xd4], 0x12c
jb 0x401eb8
jmp 0x401f4e
mov eax, 0x7a81
mov ecx, dword [esp + 0xd8]
xor ecx, 0x6a81
mov edx, dword [esp + 0xd8]
mov esi, dword [esp + 0xc0]
sub eax, edx
mov edx, dword [esp + 0x74]
mov edi, esp
mov dword [edi + 8], eax
mov dword [edi + 4], esi
mov dword [edi + 0xc], 4
mov dword [edi], 0
mov dword [esp + 0x28], ecx
call edx
sub esp, 0x10
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x90], eax
jmp 0x401e04
mov cx, word [esp + 0x36]
mov ax, cx
add eax, eax
mov dx, ax
mov word [esp + 0xee], dx
mov eax, dword [esp + 0xe0]
mov esi, dword [esp + 0xe4]
xor edi, edi
mov ebx, 0xd306
sub ebx, eax
sbb edi, esi
mov eax, dword [esp + 0xa0]
mov esi, dword [esp + 0xa4]
sub eax, ebx
sbb esi, edi
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], esi
jb 0x40205a
jmp 0x401eb8
cmp dword [esp + 0x90], 0x12c
jb 0x401fd4
jmp 0x401c67
mov eax, dword [esp + 0xd8]
add eax, 0xffff9580
add eax, dword [esp + 0xd4]
mov dword [esp + 0xd4], eax
jmp 0x401d43
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
sub eax, 0x37e7
sbb ecx, 0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
jb 0x401f1d
jmp 0x401e04
lea eax, section..data
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0xd8]
mov esi, dword [esp + 0xd8]
add esi, 0xffff957f
add edx, 0xffff957f
add ecx, 0xffff957f
mov edi, dword [esp + 0x44]
mov dword [esp + 0xcc], edi
mov dword [esp + 0x8c], eax
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xc0], edx
mov dword [esp + 0xd4], esi
jmp 0x401d43
mov eax, dword [esp + 0xd4]
imul eax, eax, 0x4c
add eax, dword [esp + 0x8c]
mov eax, dword [eax + 0x11]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x8c]
imul ecx, dword [esp + 0xd4], 0x4c
add eax, ecx
mov eax, dword [eax + 0x25]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x88]
xor eax, dword [esp + 0x94]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x88]
add eax, dword [esp + 0xc0]
mov dword [esp + 0xc0], eax
jmp 0x401e1a
mov ax, word [esp + 0xde]
add ax, 0x33c0
mov cx, word [esp + 0x36]
and cx, 0x3eaf
mov word [esp + 0xee], cx
cmp word [esp + 0x9e], ax
jb 0x401d24
jmp 0x401eb8
lea eax, [esp + 0x54]
mov word [esp + 0xee], 0xf5
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 8], 0xe
mov dword [ecx + 4], 0x4010fb
call fcn.00402100
sub esp, 0xc
lea eax, [esp + 0x54]
mov dl, byte [esp + 0xf7]
mov dh, byte [esp + 0xf7]
add dh, 0x9a
add dl, 4
mov byte [esp + 0x7f], dl
mov dl, byte [esp + 0x7f]
mov ecx, esp
mov dword [ecx], eax
mov byte [esp + 0x17], dl
mov byte [esp + 0x16], dh
call fcn.00402680
sub esp, 4
mov dword [esp + 0x74], eax
mov dl, byte [esp + 0xf6]
sub dl, 0x73
mov byte [esp + 0xf6], dl
mov dl, byte [esp + 0x17]
mov dh, byte [esp + 0x16]
cmp dl, dh
ja 0x401d59
jmp 0x401eb8
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x90]
imul ecx, ecx, 0x4c
mov eax, dword [eax + ecx + 0x11]
mov dx, word [esp + 0xae]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
mov bl, byte [esp + 0xf6]
and bl, 7
movzx esi, word [esp + 0xde]
add esi, 0x27e3
mov di, si
mov byte [esp + 0xf6], bl
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa0], eax
cmp dx, di
jb 0x401db1
jmp 0x401fd4
mov eax, dword [esp + 0x98]
imul eax, eax, 0x4c
add eax, dword [esp + 0x78]
mov cl, byte [esp + 0xf6]
and cl, byte [esp + 0xf6]
mov byte [esp + 0xf6], cl
mov eax, dword [eax + 0x48]
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x8c]
imul edx, dword [esp + 0x90], 0x4c
add eax, edx
mov eax, dword [eax + 0x25]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x50]
xor eax, dword [esp + 0xc8]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xc4]
mov edx, dword [esp + 0xbc]
add edx, dword [esp + 0xd0]
mov esi, dword [esp + 0x50]
mov edi, esp
mov dword [edi + 8], esi
mov dword [edi + 4], eax
mov dword [edi], edx
call fcn.004036c0
sub esp, 0xc
mov edx, dword [esp + 0xd0]
add edx, dword [esp + 0x50]
mov dword [esp + 0xd0], edx
mov dword [esp + 0x10], eax
jmp 0x401e39