Function at 0x419dd0
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x6c
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x6c], eax
mov eax, dword [0x44b080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x68], 0xbf60d469
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x74], eax
sub eax, 0x8497d3a9
je 0x41a80f
jmp 0x419e0c
mov eax, dword [ebp - 0x74]
sub eax, 0x860f67d9
je 0x41acc9
jmp 0x419e1f
mov eax, dword [ebp - 0x74]
sub eax, 0x89aa8470
je 0x41a3d0
jmp 0x419e32
mov eax, dword [ebp - 0x74]
sub eax, 0x89b95940
je 0x41a920
jmp 0x419e45
mov eax, dword [ebp - 0x74]
sub eax, 0x9003ad1d
je 0x41aacb
jmp 0x419e58
mov eax, dword [ebp - 0x74]
sub eax, 0x9615e97e
je 0x41acfa
jmp 0x419e6b
mov eax, dword [ebp - 0x74]
sub eax, 0x991763c2
je 0x41add8
jmp 0x419e7e
mov eax, dword [ebp - 0x74]
sub eax, 0x9a8c11dc
je 0x41a803
jmp 0x419e91
mov eax, dword [ebp - 0x74]
sub eax, 0xa96fcda5
je 0x41a719
jmp 0x419ea4
mov eax, dword [ebp - 0x74]
sub eax, 0xab1051d2
je 0x41a49d
jmp 0x419eb7
mov eax, dword [ebp - 0x74]
sub eax, 0xad439339
je 0x41a625
jmp 0x419eca
mov eax, dword [ebp - 0x74]
sub eax, 0xbc65d730
je 0x41aae5
jmp 0x419edd
mov eax, dword [ebp - 0x74]
sub eax, 0xbf60d469
je 0x41a285
jmp 0x419ef0
mov eax, dword [ebp - 0x74]
sub eax, 0xc22a9f43
je 0x41a3fb
jmp 0x419f03
mov eax, dword [ebp - 0x74]
sub eax, 0xc6db45e4
je 0x41ab55
jmp 0x419f16
mov eax, dword [ebp - 0x74]
sub eax, 0xc8b2ffa2
je 0x41a609
jmp 0x419f29
mov eax, dword [ebp - 0x74]
sub eax, 0xd5f087c8
je 0x41a615
jmp 0x419f3c
mov eax, dword [ebp - 0x74]
sub eax, 0xda90086a
je 0x41ac1a
jmp 0x419f4f
mov eax, dword [ebp - 0x74]
sub eax, 0xdb17525b
je 0x41ade4
jmp 0x419f62
mov eax, dword [ebp - 0x74]
sub eax, 0xdc8d6902
je 0x41af07
jmp 0x419f75
mov eax, dword [ebp - 0x74]
sub eax, 0xdcb43468
je 0x41acd5
jmp 0x419f88
mov eax, dword [ebp - 0x74]
sub eax, 0xe21e94f7
je 0x41a900
jmp 0x419f9b
mov eax, dword [ebp - 0x74]
sub eax, 0xe9a3bd77
je 0x41af13
jmp 0x419fae
mov eax, dword [ebp - 0x74]
sub eax, 0xecdbd891
je 0x41a93b
jmp 0x419fc1
mov eax, dword [ebp - 0x74]
sub eax, 0xf2eeb503
je 0x41ac0e
jmp 0x419fd4
mov eax, dword [ebp - 0x74]
sub eax, 0xf4c97811
je 0x41a526
jmp 0x419fe7
mov eax, dword [ebp - 0x74]
sub eax, 0xf6521652
je 0x41a85d
jmp 0x419ffa
mov eax, dword [ebp - 0x74]
sub eax, 0xfacd3950
je 0x41a3c4
jmp 0x41a00d
mov eax, dword [ebp - 0x74]
sub eax, 0xfc3dab7b
je 0x41a784
jmp 0x41a020
mov eax, dword [ebp - 0x74]
sub eax, 0xfdb2b8d5
je 0x41ae8d
jmp 0x41a033
mov eax, dword [ebp - 0x74]
sub eax, 0x1f3531d
je 0x41a5ac
jmp 0x41a046
mov eax, dword [ebp - 0x74]
sub eax, 0x22fa36b
je 0x41a457
jmp 0x41a059
mov eax, dword [ebp - 0x74]
sub eax, 0x24dc9ee
je 0x41ab2d
jmp 0x41a06c
mov eax, dword [ebp - 0x74]
sub eax, 0x10fd116b
je 0x41a70d
jmp 0x41a07f
mov eax, dword [ebp - 0x74]
sub eax, 0x120afd5d
je 0x41ae60
jmp 0x41a092
mov eax, dword [ebp - 0x74]
sub eax, 0x19db45f0
je 0x41aabf
jmp 0x41a0a5
mov eax, dword [ebp - 0x74]
sub eax, 0x1d514d4e
je 0x41ad65
jmp 0x41a0b8
mov eax, dword [ebp - 0x74]
sub eax, 0x1da1ff5c
je 0x41a8e5
jmp 0x41a0cb
mov eax, dword [ebp - 0x74]
sub eax, 0x1f5d150b
je 0x41ac6c
jmp 0x41a0de
mov eax, dword [ebp - 0x74]
sub eax, 0x36e064c7
je 0x41ac26
jmp 0x41a0f1
mov eax, dword [ebp - 0x74]
sub eax, 0x3a29d82d
je 0x41ae9f
jmp 0x41a104
mov eax, dword [ebp - 0x74]
sub eax, 0x41439f94
je 0x41a701
jmp 0x41a117
mov eax, dword [ebp - 0x74]
sub eax, 0x42311e2e
je 0x41af2e
jmp 0x41a12a
mov eax, dword [ebp - 0x74]
sub eax, 0x43516a20
je 0x41a9f2
jmp 0x41a13d
mov eax, dword [ebp - 0x74]
sub eax, 0x461d1b2b
je 0x41a690
jmp 0x41a150
mov eax, dword [ebp - 0x74]
sub eax, 0x4a265a57
je 0x41a9a6
jmp 0x41a163
mov eax, dword [ebp - 0x74]
sub eax, 0x4ee494b2
je 0x41aa4c
jmp 0x41a176
mov eax, dword [ebp - 0x74]
sub eax, 0x50559f19
je 0x41a3eb
jmp 0x41a189
mov eax, dword [ebp - 0x74]
sub eax, 0x51a85c0d
je 0x41a541
jmp 0x41a19c
mov eax, dword [ebp - 0x74]
sub eax, 0x593f8f52
je 0x41a9fe
jmp 0x41a1af
mov eax, dword [ebp - 0x74]
sub eax, 0x5ad1a246
je 0x41a2f8
jmp 0x41a1c2
mov eax, dword [ebp - 0x74]
sub eax, 0x5df59441
je 0x41ab39
jmp 0x41a1d5
mov eax, dword [ebp - 0x74]
sub eax, 0x60a5d1a1
je 0x41aefb
jmp 0x41a1e8
mov eax, dword [ebp - 0x74]
sub eax, 0x645ebe1e
je 0x41ab72
jmp 0x41a1fb
mov eax, dword [ebp - 0x74]
sub eax, 0x6b0e8e73
je 0x41abc0
jmp 0x41a20e
mov eax, dword [ebp - 0x74]
sub eax, 0x6be81087
je 0x41ae04
jmp 0x41a221
mov eax, dword [ebp - 0x74]
sub eax, 0x6c971039
je 0x41aee9
jmp 0x41a234
mov eax, dword [ebp - 0x74]
sub eax, 0x785f68c1
je 0x41ae72
jmp 0x41a247
mov eax, dword [ebp - 0x74]
sub eax, 0x790fcc3d
je 0x41a407
jmp 0x41a25a
mov eax, dword [ebp - 0x74]
sub eax, 0x7d2b60ef
je 0x41a90c
jmp 0x41a26d
mov eax, dword [ebp - 0x74]
sub eax, 0x7dec0355
je 0x41aeae
jmp 0x41a280
jmp 0x41af35
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
mov edx, ecx
add edx, 0xfd6df97a
sub edx, 1
sub edx, 0xfd6df97a
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, 0x6be81087
mov ecx, 0x5ad1a246
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x70]
push eax
mov edx, esp
mov dword [ebp - 0x50], edx
push eax
mov edx, esp
mov dword [ebp - 0x4c], edx
push eax
sub esp, 0xffc
mov edx, esp
mov dword [ebp - 0x48], edx
push eax
mov edx, esp
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
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], 0x80
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x60], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x60], eax
sete al
and al, 1
mov byte [ebp - 0x3d], al
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
mov edx, eax
sub edx, 0xad4990e6
sub edx, 1
add edx, 0xad4990e6
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, 0x6be81087
mov ecx, 0xfacd3950
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0x89aa8470
jmp 0x41af35
mov dl, byte [ebp - 0x3d]
mov eax, 0x790fcc3d
mov ecx, 0x50559f19
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov byte [ebp - 0x51], 0
mov dword [ebp - 0x68], 0xc22a9f43
jmp 0x41af35
mov dword [ebp - 0x68], 0x9615e97e
jmp 0x41af35
mov eax, dword [ebp - 0x58]
xor ecx, ecx
sub esp, 0x1c
mov dword [esp], eax
mov dword [esp + 4], 0x40000000
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
mov dword [esp + 0x14], 0x80
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x68], 0x22fa36b
jmp 0x41af35
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
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, 0x120afd5d
mov ecx, 0xab1051d2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x64], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x64], eax
sete al
and al, 1
mov byte [ebp - 0x35], al
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
mov edx, ecx
add edx, 0xfa0c84f8
sub edx, 1
sub edx, 0xfa0c84f8
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, 0x120afd5d
mov ecx, 0xf4c97811
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dl, byte [ebp - 0x35]
mov eax, 0xad439339
mov ecx, 0x51a85c0d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
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, 0x785f68c1
mov ecx, 0x1f3531d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [ebp - 0x60]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
mov edx, eax
add edx, 0xb62c0270
sub edx, 1
sub edx, 0xb62c0270
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, 0x785f68c1
mov ecx, 0xc8b2ffa2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0xd5f087c8
jmp 0x41af35
mov byte [ebp - 0x51], 0
mov dword [ebp - 0x68], 0x9615e97e
jmp 0x41af35
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
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, 0xfdb2b8d5
mov ecx, 0x461d1b2b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [ebp - 0x50]
mov byte [eax], 0
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
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, 0xfdb2b8d5
mov ecx, 0x41439f94
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0x10fd116b
jmp 0x41af35
mov dword [ebp - 0x68], 0xa96fcda5
jmp 0x41af35
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
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, 0x3a29d82d
mov ecx, 0xfc3dab7b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x30], eax
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
mov edx, ecx
sub edx, 0x16ad6454
sub edx, 1
add edx, 0x16ad6454
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, 0x3a29d82d
mov ecx, 0x9a8c11dc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0x8497d3a9
jmp 0x41af35
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
mov edx, eax
sub edx, 0x4dada7f
sub edx, 1
add edx, 0x4dada7f
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, 0x7dec0355
mov ecx, 0xf6521652
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
xor esi, esi
sub esp, 0x14
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x1000
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x29], al
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
mov edx, eax
sub edx, 0x28ac4d2f
sub edx, 1
add edx, 0x28ac4d2f
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, 0x7dec0355
mov ecx, 0x1da1ff5c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dl, byte [ebp - 0x29]
mov eax, 0xe21e94f7
mov ecx, 0x7d2b60ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0x36e064c7
jmp 0x41af35
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x68], 0x89b95940
jmp 0x41af35
mov edx, dword [ebp - 0x28]
mov eax, 0x9003ad1d
mov ecx, 0xecdbd891
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
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, 0x6c971039
mov ecx, 0x4a265a57
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [ebp - 0x50]
mov byte [eax], 1
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
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, 0x6c971039
mov ecx, 0x43516a20
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0x593f8f52
jmp 0x41af35
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
mov edx, eax
add edx, 0xbccf8327
sub edx, 1
sub edx, 0xbccf8327
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, 0x60a5d1a1
mov ecx, 0x4ee494b2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
mov edx, ecx
add edx, 0xccc74ec0
sub edx, 1
sub edx, 0xccc74ec0
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, 0x60a5d1a1
mov ecx, 0x19db45f0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0x36e064c7
jmp 0x41af35
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x68], 0xbc65d730
jmp 0x41af35
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
xor edi, edi
sub esp, 0x14
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov edx, eax
mov eax, 0x24dc9ee
mov ecx, 0x5df59441
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0x36e064c7
jmp 0x41af35
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x68], 0xc6db45e4
jmp 0x41af35
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x18]
mov eax, 0xda90086a
mov ecx, 0x645ebe1e
cmp edx, esi
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
mov edx, eax
sub edx, 0xa9660df
sub edx, 1
add edx, 0xa9660df
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, 0xdc8d6902
mov ecx, 0x6b0e8e73
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
mov edx, eax
add edx, 0xb8863614
sub edx, 1
sub edx, 0xb8863614
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, 0xdc8d6902
mov ecx, 0xf2eeb503
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0x36e064c7
jmp 0x41af35
mov dword [ebp - 0x68], 0xa96fcda5
jmp 0x41af35
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
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, 0xe9a3bd77
mov ecx, 0x1f5d150b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov eax, dword [ebp - 0x60]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x44c554]
mov ecx, dword [0x44c550]
mov edx, eax
add edx, 0x3e40c365
sub edx, 1
sub edx, 0x3e40c365
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, 0xe9a3bd77
mov ecx, 0x860f67d9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0xdcb43468
jmp 0x41af35
mov eax, dword [ebp - 0x64]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x50]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x51], al
mov dword [ebp - 0x68], 0x9615e97e
jmp 0x41af35
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
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, 0x42311e2e
mov ecx, 0x1d514d4e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov al, byte [ebp - 0x51]
and al, 1
mov byte [ebp - 0x11], al
mov ecx, dword [0x44c554]
mov eax, dword [0x44c550]
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, 0x42311e2e
mov ecx, 0x991763c2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x41af35
mov dword [ebp - 0x68], 0xdb17525b
jmp 0x41af35
mov al, byte [ebp - 0x11]
and al, 1
movzx eax, al
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00433d30
mov eax, dword [ebp - 0x78]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x70]
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
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], 0x80
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x68], 0x5ad1a246
jmp 0x41af35
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x68], 0xab1051d2
jmp 0x41af35
mov eax, dword [ebp - 0x60]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x68], 0x1f3531d
jmp 0x41af35
mov eax, dword [ebp - 0x50]
mov byte [eax], 0
mov dword [ebp - 0x68], 0x461d1b2b
jmp 0x41af35
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x68], 0xfc3dab7b
jmp 0x41af35
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
xor esi, esi
sub esp, 0x14
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x1000
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov dword [ebp - 0x68], 0xf6521652
jmp 0x41af35
mov eax, dword [ebp - 0x50]
mov byte [eax], 1
mov dword [ebp - 0x68], 0x4a265a57
jmp 0x41af35
mov dword [ebp - 0x68], 0x4ee494b2
jmp 0x41af35
mov dword [ebp - 0x68], 0x6b0e8e73
jmp 0x41af35
mov eax, dword [ebp - 0x60]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x68], 0x1f5d150b
jmp 0x41af35
mov dword [ebp - 0x68], 0x1d514d4e
jmp 0x419df6