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

Disassembly:
mov edx, 0x6c
mov word [ebp - 0x16de], dx
mov eax, 0x33
mov word [ebp - 0x16dc], ax
mov ecx, 0x32
mov word [ebp - 0x16da], cx
mov edx, 0x2e
mov word [ebp - 0x16d8], dx
mov eax, 0x64
mov word [ebp - 0x16d6], ax
mov ecx, 0x6c
mov word [ebp - 0x16d4], cx
mov edx, 0x6c
mov word [ebp - 0x16d2], dx
xor eax, eax
mov word [ebp - 0x16d0], ax
push esi
push edx
add esp, 4
xor esi, 0x8705
xor esi, 0x985f
pop esi
push ebx
sub ebx, 0xffcf
jmp 0x406afe
call 0x406b0b
add byte [ecx], bh
inc edi
dec edx
xor eax, 0x83414f4b
les eax, [ebx + ebx*2]
mov byte [ebp - 0x830], 0x4c
mov byte [ebp - 0x82f], 0x6f
mov byte [ebp - 0x82e], 0x61
mov byte [ebp - 0x82d], 0x64
mov byte [ebp - 0x82c], 0x4c
mov byte [ebp - 0x82b], 0x69
mov byte [ebp - 0x82a], 0x62
mov byte [ebp - 0x829], 0x72
mov byte [ebp - 0x828], 0x61
mov byte [ebp - 0x827], 0x72
mov byte [ebp - 0x826], 0x79
mov byte [ebp - 0x825], 0x57
mov byte [ebp - 0x824], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18d8], ecx
mov edx, dword [ebp - 0x18d8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18dc], eax
mov ecx, dword [ebp - 0x18dc]
mov dword [ebp - 0x1518], ecx
push ebx
push esi
add esp, 4
sub ebx, 0x161bb
jmp 0x406ba2
call 0x406bb2
add byte [0x483e4f4b], bh
inc edi
xor al, 0x36
cmp dword [ebp - 0x7d], ecx
les eax, [ebx + ebx*2]
push eax
xor eax, 0x13f2a
sub eax, 0x10530
pop eax
cmp dword [ebp - 0x1518], 0
jne 0x406bdc
mov dword [ebp - 0x710], 0
jmp 0x406e83
mov edx, dword [ebp - 0x1518]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc58], ecx
push edi
push edi
add esp, 4
add edi, 0x39a2
add edi, 0xce5f
and edi, 0x124
sub edi, 0x1b5a
pop edi
push edi
add edi, 0x112ce
sub edi, 0xe428
add edi, 0x4c4d
pop edi
cmp dword [ebp - 0xc58], 0
jne 0x406c38
mov dword [ebp - 0x710], 0
jmp 0x406e83
mov edx, dword [ebp - 0xc58]
mov dword [ebp - 0x4e8], edx
push esi
push ecx
add esp, 4
sub esi, 0x2903
add esi, 0xac3e
and esi, 0x143e2
pop esi
push ecx
sub ecx, 0x17aa5
add ecx, 0x37d9
sub ecx, 0x4ce8
or ecx, 0x47b1
pop ecx
lea eax, [ebp - 0x16e8]
mov dword [ebp - 0xc54], eax
mov ecx, dword [ebp - 0x4e8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc50], edx
xor eax, eax
mov word [ebp - 0x208], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
invalid
push ecx
add ecx, 0xb030
add ecx, 0x5e73
pop ecx
push ebx
call 0x406cbc
add byte [edi + 0x4e], cl
cmp al, byte [ebx + 0x3f]
cmp al, byte [ebx + eax*4 - 0x3c]
add al, 0x81
jmp 0x406c80
push esi
and esi, 0xa6ca
pop esi
push edx
or edx, 0x15312
sub edx, 0x10d75
pop edx
push ecx
push eax
add esp, 4
jmp 0x406ea5
or ecx, 0xa891
jmp 0x406eb4
pop ecx
cmp dword [ebp - 0x710], 0
jne 0x406eff
push esi
jmp 0x406ec5
jmp 0x406ece
call 0x406ede
add byte [esp + esi + 0x32], al
push eax
aas
cmp ecx, dword [esi + 0x41]
dec ebx
dec ebx
add esp, 4
or esi, 0x18516
pop esi
push edi
sub edi, 0x934e
pop edi
mov dword [ebp - 0xa58], 0
jmp 0x407a27
push ecx
and ecx, 0x109f2
xor ecx, 0x163e4
pop ecx
push esi
jmp 0x406f14
or esi, 0xe5bb
jmp 0x406f22
pop esi
push ebx
sub ebx, 0x1160b
add ebx, 0x15558
pop ebx
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x720], 0
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x1564], eax
cmp dword [ebp - 0x1564], 0
jne 0x406f70
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x407261
mov edx, dword [ebp - 0x1564]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1568], eax
jne 0x406f98
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x407261
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1568]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1570], edx
cmp dword [ebp - 0x1570], 0
jne 0x406fca
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
jmp 0x407261
mov ecx, dword [ebp - 0x300]
add ecx, dword [ebp - 0x1570]
mov dword [ebp - 0x714], ecx
jne 0x406fef
mov edx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], edx
jmp 0x407261
mov eax, dword [ebp - 0x714]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x18e0], ecx
mov edx, dword [ebp - 0x714]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x18e4], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x18e8], edx
mov dword [ebp - 0x718], 0
jmp 0x407049
mov eax, dword [ebp - 0x718]
add eax, 1
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x718]
cmp edx, dword [ecx + 0x18]
jae 0x407255
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e0]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x71c], edx
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e4]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x18e8]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x18ec], ecx
mov dword [ebp - 0x188], 0
jmp 0x4070b9
mov edx, dword [ebp - 0x188]
add edx, 1
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
test ecx, ecx
je 0x40716b
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
test eax, eax
je 0x40716b
push esi
or esi, 0x8df9
and esi, 0xc61a
pop esi
push esi
push esi
add esp, 4
or esi, 0x1901
xor esi, 0xfee9
call 0x407114
add byte [edx], bh
inc ebp
aaa
inc edi
inc edi
dec eax
dec ebx
inc edx
inc esi
add esp, 4
pop esi
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
cmp edx, ecx
je 0x40715d
mov edx, dword [ebp - 0x71c]
add edx, dword [ebp - 0x188]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x188]
movsx edx, byte [ebp + ecx - 0x830]
cmp eax, edx
jne 0x407164
jmp 0x4070aa
jmp 0x40716b
push edx
or edx, 0x147ed
pop edx
push esi
push ecx
add esp, 4
sub esi, 0x10849
pop esi
push esi
push ebx
add esp, 4
or esi, 0x67a3
jmp 0x407190
xor esi, 0x9c26
sub esi, 0x15ba4
pop esi
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
cmp ecx, eax
jne 0x4071ca
mov dword [ebp - 0xc5c], 0
jmp 0x407239
push esi
push ecx
add esp, 4
and esi, 0x407f
and esi, 0x1588b
pop esi
push esi
push ecx
add esp, 4
xor esi, 0xe815
or esi, 0xd986
pop esi
push ecx
xor ecx, 0x13eb9
add ecx, 0x12b3
pop ecx
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
or ecx, 0x20
cmp edx, ecx
jge 0x40722f
mov dword [ebp - 0xc5c], 0xffffffff
jmp 0x407239
mov dword [ebp - 0xc5c], 1
cmp dword [ebp - 0xc5c], 0
jne 0x407250
mov edx, dword [ebp - 0x18ec]
mov dword [ebp - 0x3c8], edx
jmp 0x407261
jmp 0x40703a
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
cmp dword [ebp - 0x3c8], 0
je 0x40733c
push edi
push ebx
add esp, 4
call 0x407283
add byte [edx + 0x33], al
inc esp
dec eax
dec ebp
inc ebx
xor al, byte [ebp + 0x46]
xor eax, 0x5f04c483
push eax
push edx
add esp, 4
sub eax, 0x6892
jmp 0x40729a
jmp 0x40729f
pop eax
mov ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x18f0], ecx
push ebx
push edx
add esp, 4
xor ebx, 0x10e33
pop ebx
push ebx
push edi
add esp, 4
or ebx, 0x130bc
jmp 0x4072cb
pop ebx
push eax
push ecx
add esp, 4
and eax, 0x16b17
xor eax, 0x7938
pop eax
mov edx, dword [ebp - 0x18f0]
mov dword [ebp - 0x18f4], edx
lea eax, [ebp - 0x1628]
push eax
call dword [ebp - 0x18f4]
test eax, eax
jne 0x40733c
push edi
push ebx
add esp, 4
xor edi, 0x38ad
pop edi
push ecx
push esi
add esp, 4
call 0x40731b
add byte [0x33503d44], dh
inc edx
cmp eax, 0xc4834b50
add al, 0x81
jmp 0x419e88
push edx
push ecx
add esp, 4
and edx, 0x6a7d
pop edx
push ebx
xor ebx, 0x9ca7
pop ebx
push esi
push ecx
add esp, 4
or esi, 0xe209
sub esi, 0xe244
add esi, 0x8d05
and esi, 0xb5d
pop esi
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18f8], ecx
mov edx, dword [ebp - 0x18f8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18fc], eax
mov ecx, dword [ebp - 0x18fc]
mov dword [ebp - 0x1574], ecx
push ebx
push esi
add esp, 4
and ebx, 0x107fb
jmp 0x4073a9
xor ebx, 0x566e
add ebx, 0x1472d
pop ebx
push edi
push esi
add esp, 4
sub edi, 0x5a0f
and edi, 0x6447
pop edi
cmp dword [ebp - 0x1574], 0
jne 0x4073e0
mov dword [ebp - 0x2a8], 0
jmp 0x407687
mov edx, dword [ebp - 0x1574]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc68], ecx
push ebx
push ecx
add esp, 4
xor ebx, 0x10613
or ebx, 0xa7f
and ebx, 0x117f6
or ebx, 0x147f
pop ebx
push edi
and edi, 0x10f84
sub edi, 0xa002
xor edi, 0xf907
pop edi
cmp dword [ebp - 0xc68], 0
jne 0x40743c
mov dword [ebp - 0x2a8], 0
jmp 0x407687
mov edx, dword [ebp - 0xc68]
mov dword [ebp - 0x4ec], edx
push edi
push eax
add esp, 4
and edi, 0x5873
pop edi
push esi
and esi, 0xa94d
or esi, 0x1608b
pop esi
push ebx
push ebx
add esp, 4
and ebx, 0x62a6
and ebx, 0x179d3
sub ebx, 0x4ff0
pop ebx
lea eax, [ebp - 0x1628]
mov dword [ebp - 0xc64], eax
mov ecx, dword [ebp - 0x4ec]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc60], edx
xor eax, eax
mov word [ebp - 0x20c], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push eax
push edx
add esp, 4
xor eax, 0x8efb
and eax, 0x12b5e
add eax, 0x15ba8
or eax, 0x17538
pop eax
push eax
xor eax, 0x6ad5
sub eax, 0x14e1e
sub eax, 0x7b3
pop eax
mov edx, dword [ebp - 0xc60]
mov ax, word [edx]
mov word [ebp - 0xf92], ax
mov ecx, dword [ebp - 0xc60]
add ecx, 2
mov dword [ebp - 0xc60], ecx
mov dx, word [ebp - 0xf92]
mov word [ebp - 0x20c], dx
mov eax, dword [ebp - 0xc64]
mov cx, word [eax]
mov word [ebp - 0xf94], cx
mov edx, dword [ebp - 0xc64]
add edx, 2
mov dword [ebp - 0xc64], edx
mov ax, word [ebp - 0xf94]
mov word [ebp - 0x40], ax
push eax
jmp 0x407533
pop eax
push edi
push ecx
add esp, 4
or edi, 0x2a16
sub edi, 0x9d62
pop edi
push ecx
jmp 0x40754c
xor ecx, 0x150be
and ecx, 0x1cf8
add ecx, 0x7277
pop ecx
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x40757c
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x157c], edx
jmp 0x4075d6
movzx ecx, word [ebp - 0x20c]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x4074a4
movzx eax, word [ebp - 0x20c]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x4074a4
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x4075c0
mov dword [ebp - 0x1578], 0xffffffff
jmp 0x4075ca
mov dword [ebp - 0x1578], 1
mov ecx, dword [ebp - 0x1578]
mov dword [ebp - 0x157c], ecx
cmp dword [ebp - 0x157c], 0
jne 0x40761f
push eax
push ebx
add esp, 4
sub eax, 0x13291
sub eax, 0x167c5
pop eax
push edx
push edx
add esp, 4
xor edx, 0xe65e
add edx, 0x3704
and edx, 0x48a7
pop edx
push edi
add edi, 0x2450
pop edi
mov edx, dword [ebp - 0x4ec]
mov dword [ebp - 0x2a8], edx
jmp 0x407687
push eax
push edx
add esp, 4
and eax, 0x3e2f
jmp 0x407630
jmp 0x407638
pop eax
push ecx
add ecx, 0x18311
pop ecx
push ecx
or ecx, 0xefdf
jmp 0x407650
pop ecx
mov eax, dword [ebp - 0x4ec]
mov ecx, dword [eax]
mov dword [ebp - 0x4ec], ecx
mov edx, dword [ebp - 0x4ec]
cmp edx, dword [ebp - 0xc68]
je 0x40767d
mov eax, dword [ebp - 0x4ec]
cmp dword [eax + 0x30], 0
jne 0x407448
mov dword [ebp - 0x2a8], 0
push edi
push edx
add esp, 4
call 0x40769b
add byte [eax + 0x44], dl
inc edi
cmp al, 0x45
inc ebx
xor eax, 0xc4834b39
add al, 0x81
iretd
push ebx
add ebx, 0x1691b
pop ebx
push ecx
push eax
add esp, 4
jmp 0x407a39
call 0x407a49
add byte [eax], bh
dec esp
cmp al, 0x3a
cmp eax, dword ds:[ecx + 0x3e]
push eax
inc ebx
add esp, 4
xor ecx, 0xf3b7
and ecx, 0x12adb
pop ecx
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x1910], edx
lea eax, [ebp - 0xc70]
push eax
push 0x40
mov ecx, dword [ebp - 0x158c]
push ecx
mov edx, dword [ebp - 0x3cc]
push edx
call dword [ebp - 0x1910]
test eax, eax
jne 0x407acc
push edi
push edi
add esp, 4
sub edi, 0x9133
jmp 0x407a98
jmp 0x407a9d
or edi, 0x10f39
pop edi
push eax
or eax, 0x8a65
sub eax, 0x50ae
add eax, 0x7285
pop eax
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0x1914], eax
push 0
call dword [ebp - 0x1914]
mov ecx, dword [ebp - 0x1918]
mov dword [ebp - 0x734], ecx
jmp 0x407ae9
mov eax, dword [ebp - 0x734]
cmp eax, dword [ebp - 0xa5c]
jae 0x407b45
push eax
add eax, 0x4ccd
call 0x407b0b
add byte [esi], dh
aaa
push eax
aas
dec ebx
dec esp
xor eax, 0x8104c483
invalid
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x191c], edx
lea eax, [ebp - 0xc70]
push eax
mov ecx, dword [ebp - 0xc70]
push ecx
mov edx, dword [ebp - 0x158c]
push edx
mov eax, dword [ebp - 0x3cc]
push eax
call dword [ebp - 0x191c]
test eax, eax
jne 0x407bbd
push edi
push edi
add esp, 4
and edi, 0xd947
or edi, 0x18271
and edi, 0x2552
pop edi
push edi
add edi, 0xd783
call 0x407ba5
add byte [esi], dh
dec ecx
xor al, 0x40
dec esp
dec edx
cmp dword [edx + 0x40], ecx
add esp, 4
pop edi
mov ecx, dword [ebp - 0x738]
mov dword [ebp - 0x1920], ecx
push 0
call dword [ebp - 0x1920]
push ebx
push esi
add esp, 4
or ebx, 0xe964
add ebx, 0xc21e
xor ebx, 0x15787
pop ebx
push ecx
push eax
add esp, 4
and ecx, 0x5b17
xor ecx, 0x11be7
pop ecx
push edx
and edx, 0xfd1
pop edx
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff02ff
pop ecx
push esp
push esp
test esi, eax
push es
sub esp, 0xffffffcc
lodsb al, byte [esi]
add al, byte [edx]
sub esp, 0x1d
retf 0x202
adc dword [ecx + 0x100428f], edi
add dword [ebp - 0x46eedd0d], eax
xchg edi, eax
xor al, byte [ecx]
add dword [ecx], eax
cmp eax, 0xf28611cc
add byte [ecx], al
add dword [ecx], edx
mov ecx, 0x1004287
add dword [ecx], edx
mov ecx, 0x101328f
add dword [0xc90e7fc3], edi
xchg dword [edx - 0x12], esi
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
in eax, dx
or al, 0xc9
xchg dword [edx - 0x12], esi
add dword [ecx], eax
add eax, dword [edx]
add al, byte [edx]
lea edx, [edi + 0x101ee72]
mov edx, dword [edi + 0x101ee6e]
test dword [edi + 0x101ee6e], edi
add dh, byte [edi + 0x42]
pop eax
push edx
test esi, eax
push es
or eax, 0xfffffff5
popal
add eax, dword [edx]
sub eax, 0xffffffbe
pop edi
add al, byte [edx]
xor eax, 0xffffff91
rol byte [edx], cl
add al, byte [ebx + 0x36e36d0]
add ah, byte [eax + 0x52]
or edx, 0x57
jo 0x419f05
add al, byte [ebx + 0x2b561c2]
popal
mov ch, 2
add al, byte [ebx + 0x24d40ea]
add bl, byte [edx - 0x73]
xchg dword [edx - 3], edi
add dword [ecx], eax
mov eax, dword [edi + 0x101ff2a]
in eax, dx
push 0x55
pop eax
test esi, eax
push es
or ebp, 0xffffffc6
adc eax, 0xe5830203
lea esi, [edi]
add eax, dword [edx]
ljmp 0x4502