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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x90
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0x9fee324
mov edx, dword [esp + 0x80]
mov esi, dword [esp + 0x84]
mov edi, edx
xor edi, 0x1905855e
mov dword [esp + 0x80], edi
mov dword [esp + 0x68], 0x4e1827eb
mov bl, byte [esp + 0x6f]
mov bh, bl
and bh, 0x76
mov byte [esp + 0x6f], bh
mov word [esp + 0x66], 0x7845
mov edi, dword [esp + 0x74]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x20], eax
xor eax, eax
mov dword [esp + 0x1c], eax
mov eax, 0x5412d77c
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x20]
sub eax, ecx
mov ecx, dword [esp + 0x1c]
sbb ecx, edi
mov di, word [esp + 0x7e]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
mov byte [esp + 0x65], 0xd7
mov eax, edx
not eax
mov ecx, esi
not ecx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x80], eax
mov word [esp + 0x4e], 0x8f98
mov bh, bl
add bh, 0x26
mov eax, dword [ebp + 8]
mov byte [esp + 0x6f], bh
cmp eax, 0
mov byte [esp + 0x17], bl
mov word [esp + 0x14], di
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], esi
je 0x100049f2
jmp 0x100049be
movzx eax, word [esp + 0x2e]
cmp eax, 0x5a
jle 0x10004aa5
jmp 0x10004b0b
cmp dword [esp + 0x40], 0
je 0x10004a48
jmp 0x10004a74
mov ax, word [esp + 0x14]
mov word [esp + 0x7e], ax
mov ecx, dword [esp + 0x5c]
and ax, ax
mov edx, dword [esp + 0x48]
mov word [esp + 0x7e], ax
shr ecx, 1
cmp edx, ecx
jb 0x10004c16
jmp 0x10004a95
mov dword [esp + 0x40], 0
mov dword [esp + 0x48], 0
jmp 0x10004906
mov eax, 0x4e1827ec
mov cx, word [esp + 0x14]
imul dx, cx, 0x2f10
mov word [esp + 0x7e], dx
sub eax, dword [esp + 0x68]
add eax, dword [esp + 0x48]
mov dword [esp + 0x48], eax
mov bl, byte [esp + 0x17]
mov byte [esp + 0x6f], bl
jmp 0x10004906
mov eax, dword [esp + 0x38]
add eax, 0xfffffff8
mov cx, word [esp + 0x4e]
mov dx, word [esp + 0x66]
mov si, 0xf962
sub si, dx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x50]
mov edi, dword [esp + 0x10]
and edi, 0x6cf4a3b5
mov dword [esp + 0x80], edi
mov dword [esp + 0x84], 0
movzx eax, word [eax + 0x2c]
mov dword [esp + 0x44], eax
cmp cx, si
ja 0x10004b5d
jmp 0x10004b0b
call fcn.10004320
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x78]
add ecx, 0x6816eb6b
mov dword [esp + 0x78], ecx
mov eax, dword [eax + 0xc]
add eax, 0x14
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
mov eax, dword [eax]
mov dword [esp + 0x38], eax
jmp 0x10004a85
cmp dword [ebp + 0xc], 0
je 0x10004ac4
jmp 0x100049be
mov cx, word [esp + 0x14]
mov ax, cx
xor eax, 0xaae
mov dx, ax
mov word [esp + 0x7e], dx
xor eax, eax
mov esi, 0x48e6c94c
mov edi, dword [esp + 0x10]
sub esi, edi
mov ebx, dword [esp + 0xc]
sbb eax, ebx
mov edi, dword [esp + 0x50]
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], eax
mov dword [esp + 0x60], edi
jmp 0x10004a79
mov dword [esp + 0x60], 0
jmp 0x10004a79
jmp 0x10004a95
mov ax, word [esp + 0x14]
imul cx, ax, 0x58df
mov dx, word [esp + 0x2e]
mov word [esp + 0x7e], cx
or ax, 0x1daa
movzx esi, dx
mov word [esp + 0x7e], ax
cmp esi, 0
je 0x10004a48
jmp 0x100048f6
jmp 0x10004942
mov eax, dword [esp + 0x60]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x3c]
cmp dword [esp + 0x38], eax
jne 0x1000496c
jmp 0x10004a3e
cmp dword [esp + 0x40], 0
jne 0x10004bd3
jmp 0x10004bf1
mov al, byte [esp + 0x17]
or al, al
movzx ecx, word [esp + 0x2e]
add ecx, 0x61
sub ecx, 0x41
mov dx, cx
mov byte [esp + 0x6f], al
mov word [esp + 0x2e], dx
jmp 0x10004b0b
mov eax, 0xffffffff
mov byte [esp + 0x6f], 0x2f
mov dword [esp + 0x60], eax
jmp 0x10004a79
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov dl, byte [esp + 0x17]
mov byte [esp + 0x6f], dl
mov esi, dword [ebp + 0xc]
mov di, word [esp + 0x14]
mov word [esp + 0x7e], di
mov dword [esp + 0x58], esi
xor eax, 0x51323cff
or eax, ecx
mov dword [esp + 8], eax
jne 0x10004c50
jmp 0x100048e3
mov al, 0xf4
mov cl, 0x46
mov dl, byte [esp + 0x17]
mov byte [esp + 7], al
mov al, dl
mul cl
mov esi, dword [ebp + 8]
mov edi, dword [esp + 0x48]
mov bx, word [esi + edi*2]
mov byte [esp + 0x6f], al
mov al, byte [esp + 0x65]
movzx esi, word [esp + 0x2e]
movzx edi, bx
cmp edi, esi
sete cl
and cl, 1
movzx esi, cl
mov dword [esp + 0x40], esi
xor dl, 0xf0
mov byte [esp + 0x6f], dl
mov cl, byte [esp + 7]
cmp cl, al
ja 0x10004a4a
jmp 0x10004a79
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x80], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x84], edx
mov dword [esp + 0x5c], eax
mov bl, byte [esp + 0x17]
add bl, 0xdc
mov eax, dword [esp + 0x50]
mov byte [esp + 0x6f], bl
or ecx, 0x6ed63e07
mov eax, dword [eax + 0x30]
mov dword [esp + 0x84], edx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x78]
and eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x50]
mov ecx, dword [ecx + 0x18]
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 0xc]
mov esi, dword [esp + 0x78]
xor esi, 0xffffffff
mov dword [esp + 0x78], esi
cmp ecx, eax
je 0x10004ad4
jmp 0x10004930
mov ax, word [esp + 0x14]
xor ax, 0x6d99
mov ecx, dword [esp + 0x50]
mov word [esp + 0x7e], ax
mov ecx, dword [ecx + 0x18]
mov dword [esp + 0x60], ecx
jmp 0x10004a79
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
mov dword [esp + 0x38], eax
jmp 0x10004a85
mov ax, word [esp + 0x14]
add ax, 0xc1c3
mov word [esp + 0x7e], ax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x78], 0x5ebc7428
mov edx, dword [esp + 0x48]
mov ax, word [ecx + edx*2]
mov word [esp + 0x2e], ax
movzx ecx, word [esp + 0x2e]
cmp ecx, 0x41
jge 0x100048e3
jmp 0x10004b0b
cmp dword [esp + 0x58], 0
jne 0x100049fe
jmp 0x10004930