Function at 0x413640
Capabilities:
Allocate or change rwx memory
Read file via mapping

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x8c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x94], eax
mov eax, dword [0x446080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x90], 0xa84b3a40
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x98], eax
sub eax, 0x8214f830
je 0x4149ab
jmp 0x413685
mov eax, dword [ebp - 0x98]
sub eax, 0x8245fe25
je 0x413e84
jmp 0x41369b
mov eax, dword [ebp - 0x98]
sub eax, 0x836f06d4
je 0x4141a6
jmp 0x4136b1
mov eax, dword [ebp - 0x98]
sub eax, 0x853a75e6
je 0x41491a
jmp 0x4136c7
mov eax, dword [ebp - 0x98]
sub eax, 0x9764a706
je 0x4142cb
jmp 0x4136dd
mov eax, dword [ebp - 0x98]
sub eax, 0x9b422279
je 0x413ea2
jmp 0x4136f3
mov eax, dword [ebp - 0x98]
sub eax, 0x9de532da
je 0x414716
jmp 0x413709
mov eax, dword [ebp - 0x98]
sub eax, 0xa2a91c52
je 0x4144f9
jmp 0x41371f
mov eax, dword [ebp - 0x98]
sub eax, 0xa5bfea52
je 0x414631
jmp 0x413735
mov eax, dword [ebp - 0x98]
sub eax, 0xa63cf64b
je 0x414508
jmp 0x41374b
mov eax, dword [ebp - 0x98]
sub eax, 0xa84b3a40
je 0x413b9c
jmp 0x413761
mov eax, dword [ebp - 0x98]
sub eax, 0xa8e573f3
je 0x4147d5
jmp 0x413777
mov eax, dword [ebp - 0x98]
sub eax, 0xae3eb4d5
je 0x413cd0
jmp 0x41378d
mov eax, dword [ebp - 0x98]
sub eax, 0xb4fc9dc8
je 0x41443a
jmp 0x4137a3
mov eax, dword [ebp - 0x98]
sub eax, 0xb5d30ce5
je 0x41448b
jmp 0x4137b9
mov eax, dword [ebp - 0x98]
sub eax, 0xb81c5f78
je 0x41415d
jmp 0x4137cf
mov eax, dword [ebp - 0x98]
sub eax, 0xb9a59577
je 0x413fbc
jmp 0x4137e5
mov eax, dword [ebp - 0x98]
sub eax, 0xbff03b86
je 0x413fa1
jmp 0x4137fb
mov eax, dword [ebp - 0x98]
sub eax, 0xc006372b
je 0x414127
jmp 0x413811
mov eax, dword [ebp - 0x98]
sub eax, 0xd1b4c609
je 0x41487e
jmp 0x413827
mov eax, dword [ebp - 0x98]
sub eax, 0xdcbb2b4d
je 0x4149c9
jmp 0x41383d
mov eax, dword [ebp - 0x98]
sub eax, 0xe252f66e
je 0x414682
jmp 0x413853
mov eax, dword [ebp - 0x98]
sub eax, 0xe51abcd9
je 0x413ed7
jmp 0x413869
mov eax, dword [ebp - 0x98]
sub eax, 0xe78b22af
je 0x414968
jmp 0x41387f
mov eax, dword [ebp - 0x98]
sub eax, 0xe8e28959
je 0x413c88
jmp 0x413895
mov eax, dword [ebp - 0x98]
sub eax, 0xe9786221
je 0x41402c
jmp 0x4138ab
mov eax, dword [ebp - 0x98]
sub eax, 0xf28a67eb
je 0x413e75
jmp 0x4138c1
mov eax, dword [ebp - 0x98]
sub eax, 0xf6ef0c58
je 0x413d75
jmp 0x4138d7
mov eax, dword [ebp - 0x98]
sub eax, 0xf8b5d365
je 0x414530
jmp 0x4138ed
mov eax, dword [ebp - 0x98]
sub eax, 0xfa60a6b9
je 0x413c79
jmp 0x413903
mov eax, dword [ebp - 0x98]
sub eax, 0xfb23e6ea
je 0x414707
jmp 0x413919
mov eax, dword [ebp - 0x98]
sub eax, 0xb9200b4
je 0x4148f9
jmp 0x41392f
mov eax, dword [ebp - 0x98]
sub eax, 0xf295995
je 0x414118
jmp 0x413945
mov eax, dword [ebp - 0x98]
sub eax, 0x19456049
je 0x413fdc
jmp 0x41395b
mov eax, dword [ebp - 0x98]
sub eax, 0x1ad9f5cd
je 0x41497a
jmp 0x413971
mov eax, dword [ebp - 0x98]
sub eax, 0x1c48acdb
je 0x41442b
jmp 0x413987
mov eax, dword [ebp - 0x98]
sub eax, 0x1d490b27
je 0x4143af
jmp 0x41399d
mov eax, dword [ebp - 0x98]
sub eax, 0x1fcbaa76
je 0x413bec
jmp 0x4139b3
mov eax, dword [ebp - 0x98]
sub eax, 0x21f19e41
je 0x413d9b
jmp 0x4139c9
mov eax, dword [ebp - 0x98]
sub eax, 0x2518a2a0
je 0x413d84
jmp 0x4139df
mov eax, dword [ebp - 0x98]
sub eax, 0x26088a36
je 0x413ee6
jmp 0x4139f5
mov eax, dword [ebp - 0x98]
sub eax, 0x2723196d
je 0x414521
jmp 0x413a0b
mov eax, dword [ebp - 0x98]
sub eax, 0x27878428
je 0x414246
jmp 0x413a21
mov eax, dword [ebp - 0x98]
sub eax, 0x286b0d78
je 0x413ced
jmp 0x413a37
mov eax, dword [ebp - 0x98]
sub eax, 0x355ad432
je 0x414835
jmp 0x413a4d
mov eax, dword [ebp - 0x98]
sub eax, 0x36e81ee7
je 0x414255
jmp 0x413a63
mov eax, dword [ebp - 0x98]
sub eax, 0x37dc8881
je 0x413f89
jmp 0x413a79
mov eax, dword [ebp - 0x98]
sub eax, 0x3eb6abab
je 0x413f37
jmp 0x413a8f
mov eax, dword [ebp - 0x98]
sub eax, 0x4e9b5c71
je 0x413dec
jmp 0x413aa5
mov eax, dword [ebp - 0x98]
sub eax, 0x58d0774f
je 0x4147e4
jmp 0x413abb
mov eax, dword [ebp - 0x98]
sub eax, 0x5ad7f75d
je 0x4148df
jmp 0x413ad1
mov eax, dword [ebp - 0x98]
sub eax, 0x64e768ec
je 0x414581
jmp 0x413ae7
mov eax, dword [ebp - 0x98]
sub eax, 0x69bbf2b0
je 0x41478c
jmp 0x413afd
mov eax, dword [ebp - 0x98]
sub eax, 0x6a26c98d
je 0x413f6a
jmp 0x413b13
mov eax, dword [ebp - 0x98]
sub eax, 0x6d008e01
je 0x414890
jmp 0x413b29
mov eax, dword [ebp - 0x98]
sub eax, 0x73466de7
je 0x4149d8
jmp 0x413b3f
mov eax, dword [ebp - 0x98]
sub eax, 0x77b1011d
je 0x414622
jmp 0x413b55
mov eax, dword [ebp - 0x98]
sub eax, 0x7de58cdc
je 0x4143a0
jmp 0x413b6b
mov eax, dword [ebp - 0x98]
sub eax, 0x7ef18545
je 0x41409a
jmp 0x413b81
mov eax, dword [ebp - 0x98]
sub eax, 0x7f12cc08
je 0x413eb9
jmp 0x413b97
jmp 0x4149e2
push eax
sub esp, 8
mov eax, esp
mov dword [ebp - 0x84], eax
push eax
mov eax, esp
mov dword [ebp - 0x80], eax
push eax
mov eax, esp
mov dword [ebp - 0x7c], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x78], eax
push eax
mov eax, esp
mov dword [ebp - 0x74], eax
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
push eax
mov eax, esp
mov dword [ebp - 0x68], eax
push eax
mov eax, esp
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x90], 0x1fcbaa76
jmp 0x4149e2
mov eax, dword [ebp - 0x94]
push eax
mov ecx, esp
mov dword [ebp - 0x60], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x5c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x58], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x88], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x84]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.0042fa70
add esp, 0xc
mov eax, dword [ebp - 0x88]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov edx, dword [ebp - 0x80]
mov eax, 0xfa60a6b9
mov ecx, 0xe8e28959
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0x58d0774f
jmp 0x4149e2
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x84]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov dword [ebp - 0x90], 0xae3eb4d5
jmp 0x4149e2
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x90], 0x286b0d78
jmp 0x4149e2
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov eax, dword [ebp - 0x78]
xor ecx, ecx
sub esp, 0x1c
mov dword [esp], eax
mov dword [esp + 4], 0x80000000
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov ecx, eax
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov edx, dword [ebp - 0x74]
mov esi, 0xffffffff
mov eax, 0x2518a2a0
mov ecx, 0xf6ef0c58
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0x58d0774f
jmp 0x4149e2
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x90], 0x21f19e41
jmp 0x4149e2
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
mov edx, eax
sub edx, 0xeb2e146e
sub edx, 1
add edx, 0xeb2e146e
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x6d008e01
mov ecx, 0x4e9b5c71
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x48]
xor ecx, ecx
sub esp, 0x18
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1000002
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov ecx, eax
mov eax, dword [ebp - 0x70]
mov dword [eax], ecx
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x6d008e01
mov ecx, 0xf28a67eb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0x8245fe25
jmp 0x4149e2
mov edx, dword [ebp - 0x70]
mov eax, 0x9b422279
mov ecx, 0x26088a36
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x90], 0x7f12cc08
jmp 0x4149e2
mov eax, dword [ebp - 0x44]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x90], 0xe51abcd9
jmp 0x4149e2
mov dword [ebp - 0x90], 0x58d0774f
jmp 0x4149e2
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 0x14
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ecx, eax
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x90], 0x3eb6abab
jmp 0x4149e2
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x40]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x68]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x3c]
sub eax, 0xad6d9336
add eax, ecx
add eax, 0xad6d9336
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x90], 0x6a26c98d
jmp 0x4149e2
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x60]
mov word [eax], 0
mov dword [ebp - 0x90], 0x37dc8881
jmp 0x4149e2
mov eax, dword [ebp - 0x60]
movzx eax, word [eax]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x90], 0xbff03b86
jmp 0x4149e2
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
movzx eax, word [eax + 6]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x90], 0xb9a59577
jmp 0x4149e2
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov eax, 0xf8b5d365
mov ecx, 0x19456049
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
add eax, 0xda60e68d
add eax, 0x18
sub eax, 0xda60e68d
mov ecx, dword [ebp - 0x64]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
sub eax, 0xce216c2e
add eax, ecx
add eax, 0xce216c2e
mov ecx, dword [ebp - 0x60]
movzx ecx, word [ecx]
imul edx, ecx, 0x28
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x90], 0xe9786221
jmp 0x4149e2
mov ecx, dword [0x4475ac]
mov eax, dword [0x4475a8]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x5ad7f75d
mov ecx, 0x7ef18545
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x30]
mov dword [eax], ecx
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov ecx, dword [0x4475ac]
mov eax, dword [0x4475a8]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x5ad7f75d
mov ecx, 0xf295995
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0xc006372b
jmp 0x4149e2
mov ecx, dword [ebp - 0x2c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x43efb2
call fcn.00433370
add esp, 8
mov edx, eax
mov eax, 0xb81c5f78
mov ecx, 0x1c48acdb
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xb9200b4
mov ecx, 0x836f06d4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x58]
mov dword [eax], 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x24], eax
mov ecx, dword [0x4475ac]
mov eax, dword [0x4475a8]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xb9200b4
mov ecx, 0x27878428
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0x36e81ee7
jmp 0x4149e2
mov ecx, dword [0x4475ac]
mov eax, dword [0x4475a8]
mov edx, ecx
sub edx, 0x7ab62ebd
sub edx, 1
add edx, 0x7ab62ebd
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x853a75e6
mov ecx, 0x9764a706
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x40
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x54]
mov byte [eax], cl
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x1c], eax
mov ecx, dword [0x4475ac]
mov eax, dword [0x4475a8]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x853a75e6
mov ecx, 0x7de58cdc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0x1d490b27
jmp 0x4149e2
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x20]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0042fbd0
add esp, 0xc
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x7c]
mov esi, dword [eax]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x58]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x54]
mov byte [eax], cl
mov dword [ebp - 0x90], 0x1c48acdb
jmp 0x4149e2
mov dword [ebp - 0x90], 0xb4fc9dc8
jmp 0x4149e2
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
mov edx, eax
add edx, 0xe5ae04b3
sub edx, 1
sub edx, 0xe5ae04b3
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xe78b22af
mov ecx, 0xb5d30ce5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x60]
mov ax, word [eax]
xor ecx, ecx
sub cx, ax
xor eax, eax
sub ax, 1
add cx, ax
xor eax, eax
sub ax, cx
mov word [ebp - 0x16], ax
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
mov edx, eax
sub edx, 0x2f220f42
sub edx, 1
add edx, 0x2f220f42
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xe78b22af
mov ecx, 0xa2a91c52
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0xa63cf64b
jmp 0x4149e2
mov eax, dword [ebp - 0x60]
mov cx, word [ebp - 0x16]
mov word [eax], cx
mov dword [ebp - 0x90], 0x2723196d
jmp 0x4149e2
mov dword [ebp - 0x90], 0x37dc8881
jmp 0x4149e2
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
mov edx, eax
sub edx, 0x517cf097
sub edx, 1
add edx, 0x517cf097
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x1ad9f5cd
mov ecx, 0x64e768ec
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x4475ac]
mov eax, dword [0x4475a8]
mov edx, ecx
add edx, 0xaa69bf6e
sub edx, 1
sub edx, 0xaa69bf6e
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x1ad9f5cd
mov ecx, 0x77b1011d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0xa5bfea52
jmp 0x4149e2
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
mov edx, eax
add edx, 0x1bc1c0e8
sub edx, 1
sub edx, 0x1bc1c0e8
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x8214f830
mov ecx, 0xe252f66e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x4475ac]
mov eax, dword [0x4475a8]
mov edx, ecx
sub edx, 0xa63b9a11
sub edx, 1
add edx, 0xa63b9a11
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x8214f830
mov ecx, 0xfb23e6ea
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0x9de532da
jmp 0x4149e2
mov ecx, dword [0x4475ac]
mov eax, dword [0x4475a8]
mov edx, ecx
add edx, 0x6e669b0
sub edx, 1
sub edx, 0x6e669b0
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xdcbb2b4d
mov ecx, 0x69bbf2b0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xdcbb2b4d
mov ecx, 0xa8e573f3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov dword [ebp - 0x90], 0x58d0774f
jmp 0x4149e2
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
mov edx, eax
sub edx, 0x9b65c549
sub edx, 1
add edx, 0x9b65c549
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x73466de7
mov ecx, 0x355ad432
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov eax, dword [0x4475ac]
mov ecx, dword [0x4475a8]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x73466de7
mov ecx, 0xd1b4c609
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x4149e2
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042ed80
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x48]
xor ecx, ecx
sub esp, 0x18
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1000002
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov ecx, eax
mov eax, dword [ebp - 0x70]
mov dword [eax], ecx
mov dword [ebp - 0x90], 0x4e9b5c71
jmp 0x4149e2
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x30]
mov dword [eax], ecx
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0x7ef18545
jmp 0x4149e2
mov eax, dword [ebp - 0x58]
mov dword [eax], 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0x836f06d4
jmp 0x4149e2
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x40
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x54]
mov byte [eax], cl
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x90], 0x9764a706
jmp 0x4149e2
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x90], 0xb5d30ce5
jmp 0x4149e2
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x90], 0x64e768ec
jmp 0x4149e2
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x90], 0xe252f66e
jmp 0x4149e2
mov dword [ebp - 0x90], 0x69bbf2b0
jmp 0x4149e2
mov dword [ebp - 0x90], 0x355ad432
jmp 0x413669