Function at 0x4102e7
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd8
lea eax, [0x40fdc3]
mov dword [esp + 0xd0], 0x4c94f6be
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0x30], 0x4123358b
mov edx, dword [esp + 0xc8]
mov esi, dword [esp + 0xcc]
mov edi, edx
add edi, 0xf4415e1c
mov ebx, esi
adc ebx, 0xffffffff
mov dword [esp + 0xc8], edi
mov dword [esp + 0xcc], ebx
lea edi, [esp + 0x40]
lea ebx, [esp + 0xac]
mov dword [esp + 0x20], eax
mov eax, esp
mov dword [eax], ebx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
call fcn.0040f7b3
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x68], ecx
mov cl, byte [esp + 0xc5]
mov ch, cl
add ch, 0xc5
mov byte [esp + 0xc5], ch
movzx edx, word [esp + 0xc6]
mov si, dx
mov edi, edx
xor edi, 0x2df9
mov word [esp + 0xc6], di
mov ebx, dword [esp + 0xd0]
add ebx, 0xb36c4342
mov dword [esp + 0x6c], ebx
mov ebx, dword [0x457b98]
xor edi, edi
mov dword [esp + 0xcc], edi
mov dword [esp + 0xc8], 0x7b37964b
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x14]
and eax, 0x3a7d036b
mov dword [esp + 0xc8], eax
mov dword [esp + 0xa4], ebx
mov word [esp + 0xc6], 0xbedc
mov eax, dword [0x457b94]
add edx, 0xffffbe48
mov word [esp + 0xc6], dx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc0], eax
mov ebx, dword [0x457ba0]
mov dword [esp + 0xc8], edi
mov dword [esp + 0x9c], ebx
mov edi, dword [0x457b9c]
mov word [esp + 0xc6], 0x9a03
mov dword [esp + 0xa8], edi
mov edi, dword [0x457ba4]
mov dword [esp + 0xc0], eax
mov dword [esp + 0x98], edi
mov dx, si
xor dx, 0xffff
mov word [esp + 0xc6], dx
mov edi, dword [esp + 0x20]
mov dword [esp + 0x3c], edi
mov byte [esp + 0xb], cl
mov word [esp + 8], si
jmp 0x4105e3
mov eax, 0x54eaf76b
mov cx, word [esp + 8]
and cx, 0x71ed
mov word [esp + 0xc6], cx
mov dword [esp + 0x24], 0x26529173
mov edx, dword [esp + 0x24]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x30]
mov byte [esp + 0xc5], 0x4e
mov dword [esp + 0xbc], 0x210cc288
cmp eax, edx
ja 0x41068a
mov eax, dword [esp + 0xbc]
mov cl, byte [esp + 0xb]
and cl, 0x71
mov byte [esp + 0xc5], cl
mov dx, word [esp + 8]
or dx, 0xe26c
mov word [esp + 0xc6], dx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0xd0]
add eax, 0xb36af942
mov word [esp + 0xc6], 0x2bf8
mov ecx, dword [esp + 0x28]
mov dword [esp + 0xc0], 0x69564836
add ecx, 0xfffff000
mov dword [esp + 0xcc], 0
mov dword [esp + 0xc8], 0x685ee8ae
and ecx, eax
mov dword [esp + 0x3c], ecx
jmp 0x4105e3
mov eax, dword [esp + 0x28]
mov cx, word [esp + 8]
mov word [esp + 0xc6], cx
mov eax, dword [eax + 0x3c]
mov dword [esp + 0xcc], 0
mov dword [esp + 0xc8], 0x17c7d90d
add eax, dword [esp + 0x28]
mov dword [esp + 0x38], eax
xor cx, 0x4da1
mov word [esp + 0xc6], cx
mov eax, dword [esp + 0x38]
cmp dword [eax], 0x4550
je 0x410615
jmp 0x4104ee
mov al, byte [esp + 0xb]
add al, 0xc0
mov ecx, dword [esp + 0x2c]
mov byte [esp + 0xc5], al
mov edx, esp
lea esi, [esp + 0x40]
mov dword [edx], esi
call ecx
sub esp, 4
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
imul ecx, edx
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x14]
mul esi
add edx, ecx
add edx, ecx
mov dword [esp + 0xcc], edx
mov dword [esp + 0xc8], eax
mov dword [esp + 0xbc], 0xca
jmp 0x4104bf
mov eax, dword [esp + 0x3c]
mov cl, byte [esp + 0xb]
mov byte [esp + 0xc5], cl
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0xc0], 0xc21f4d11
cmp word [eax], 0x5a4d
je 0x410479
jmp 0x4104ee
lea eax, [esp + 0x40]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x38]
mov dl, byte [esp + 0xb]
xor dl, 0xff
mov byte [esp + 0xc5], dl
mov ecx, dword [ecx + 0x50]
mov dword [esp + 0x84], ecx
mov dword [esp + 0xc0], 0x5e1592c2
mov ecx, dword [esp + 0xb4]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00410203
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
mov dl, byte [esp + 0xb]
mov byte [esp + 0xc5], dl
mov dword [esp + 0xbc], 0
cmp eax, 0
je 0x4104bf
jmp 0x41058e
mov eax, 0xc6f641ee
mov cx, word [esp + 8]
mov word [esp + 0xc6], cx
mov edx, dword [esp + 0xd0]
mov esi, dword [esp + 0x14]
mov dword [esp + 0xc8], esi
mov edi, dword [esp + 0x10]
mov dword [esp + 0xcc], edi
mov ebx, dword [esp + 0x34]
sub eax, edx
mov word [esp + 0xc6], cx
cmp eax, ebx
jb 0x4104ee
jmp 0x41053a