Function at 0x10038590
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa8
mov eax, dword [0x1006d040]
xor eax, esp
mov dword [esp + 0xa4], eax
cmp dword [ecx + 0x10], 0
sete byte [esp + 7]
mov dword [esp + 0x70], ecx
lea eax, [ecx + 0x14]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
lea eax, [edx + 4]
mov dword [esp + 0x64], eax
mov ecx, 0xc590e184
mov eax, 0x65807436
jmp 0x10038610
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
mov eax, dword [eax]
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x30]
cmp eax, dword [ecx]
mov eax, 0x43a658d5
mov ecx, 0x7c961b71
cmove eax, ecx
mov ecx, 0x78823178
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp ecx, 0xee4f12bf
jle 0x10038680
cmp ecx, 0x427c7379
jle 0x100386f0
cmp ecx, 0x6105a5c8
jg 0x100387a7
cmp ecx, 0x56718565
jg 0x10038902
cmp ecx, 0x427c737a
je 0x10038acf
cmp ecx, 0x54e529a3
je 0x10038aea
cmp ecx, 0x55be00f4
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x8a65f80e
mov ecx, 0xdb72afe1
mov edx, 0xc205d470
cmovl ecx, edx
jmp 0x10038610
cmp ecx, 0xbe05f5c4
jg 0x10038750
cmp ecx, 0xa141f1db
jg 0x100387f2
cmp ecx, 0x97152d99
jg 0x10038941
cmp ecx, 0x8005fa4a
je 0x10038af4
cmp ecx, 0x8b499c1a
je 0x10038b0f
cmp ecx, 0x8bc30144
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x43a658d5
mov ecx, 0x54e529a3
mov edx, 0xff9fddae
cmove ecx, edx
jmp 0x10038610
cmp ecx, 0x202eb881
jle 0x1003886c
cmp ecx, 0x33477708
jg 0x10038980
cmp ecx, 0x202eb882
je 0x10038b2a
cmp ecx, 0x294f3a69
je 0x10038b45
cmp ecx, 0x30689353
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x566de52b
mov ecx, 0x54e529a3
mov edx, 0x733fa397
cmove ecx, edx
jmp 0x10038610
cmp ecx, 0xcc480e77
jle 0x100388b7
cmp ecx, 0xe00595be
jg 0x100389bd
cmp ecx, 0xcc480e78
je 0x10038b62
cmp ecx, 0xcf9fcffb
je 0x10038b7d
cmp ecx, 0xdb72afe1
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0xd56af4d2
mov ecx, 0xe00595bf
mov edx, 0x732a9e4d
cmovl ecx, edx
jmp 0x10038610
cmp ecx, 0x733fa396
jg 0x100389eb
cmp ecx, 0x6105a5c9
je 0x10038b98
cmp ecx, 0x68d347ec
je 0x10038be5
cmp ecx, 0x732a9e4d
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x8a65f80e
mov ecx, 0x54e529a3
mov edx, 0xab789973
cmove ecx, edx
jmp 0x10038610
cmp ecx, 0xacf00389
jg 0x10038a2a
cmp ecx, 0xa141f1dc
je 0x10038c00
cmp ecx, 0xa6ec7fd3
je 0x10038c1b
cmp ecx, 0xab789973
jne 0x10038610
mov eax, dword [esp + 0x28]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x58]
lea ecx, [esp + 0x8c]
call fcn.10055250
mov eax, dword [esp + 0x84]
mov eax, dword [eax]
mov ecx, dword [esp + 0x50]
cmp dword [ecx], 0x10
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x80], edi
mov dword [esp + 0x7c], ebx
jae 0x100390f4
mov ecx, dword [esp + 0x14]
jmp 0x100390f6
cmp ecx, 0xff9fddad
jle 0x10038a69
cmp ecx, 0xff9fddae
je 0x10038c36
cmp ecx, 0x1a0974aa
je 0x10038c64
cmp ecx, 0x1a6bd954
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0xe6b3dac7
mov ecx, 0x54e529a3
mov edx, 0x1a0974aa
cmove ecx, edx
jmp 0x10038610
cmp ecx, 0xc205d46f
jle 0x10038a9c
cmp ecx, 0xc205d470
je 0x10038d83
cmp ecx, 0xc590e184
je 0x10038d9e
cmp ecx, 0xc7564dd6
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x2d0466f6
mov ecx, 0x56f9e0d7
mov edx, 0x68d347ec
cmovl ecx, edx
jmp 0x10038610
cmp ecx, 0x56718566
je 0x10038dab
cmp ecx, 0x56f9e0d7
je 0x10038dc6
cmp ecx, 0x5946fa92
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0xf3de8b9e
mov ecx, 0x54e529a3
mov edx, 0x97152d9a
cmove ecx, edx
jmp 0x10038610
cmp ecx, 0x97152d9a
je 0x10038de1
cmp ecx, 0x9970f369
je 0x100385d3
cmp ecx, 0x9f067b53
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x1fee6cf9
mov ecx, 0x54e529a3
mov edx, 0x6105a5c9
cmove ecx, edx
jmp 0x10038610
cmp ecx, 0x33477709
je 0x10038e28
cmp ecx, 0x34fae1f2
je 0x10038e44
cmp ecx, 0x3cbec8b0
jne 0x10038610
push edi
push ebx
call fcn.1005a310
add esp, 8
mov ecx, 0x78823178
mov eax, 0x566de52b
jmp 0x10038610
cmp ecx, 0xe00595bf
je 0x10038e5e
cmp ecx, 0xe316f439
je 0x10038e79
cmp ecx, 0xe56728d3
jne 0x10038610
mov ecx, 0x78823178
jmp 0x10038610
cmp ecx, 0x733fa397
je 0x10038fe8
cmp ecx, 0x78823178
je 0x1003901e
cmp ecx, 0x7fee1b39
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x7c961b71
mov ecx, 0x54e529a3
mov edx, 0xfe62ffa8
cmove ecx, edx
jmp 0x10038610
cmp ecx, 0xacf0038a
je 0x10039028
cmp ecx, 0xae9b081a
je 0x10039043
cmp ecx, 0xba5e5773
jne 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x65807436
mov ecx, 0xee4f12c0
mov edx, 0xa141f1dc
cmovl ecx, edx
jmp 0x10038610
cmp ecx, 0xee4f12c0
je 0x1003905e
cmp ecx, 0xf489d9b7
jne 0x100394bf
mov ecx, dword [esp]
cmp ecx, 0x1fee6cf9
mov ecx, 0x9f067b53
mov edx, 0x8005fa4a
cmovl ecx, edx
jmp 0x10038610
cmp ecx, 0xbe05f5c5
je 0x10039079
cmp ecx, 0xc1658aec
jne 0x100394cd
mov ecx, dword [esp]
cmp ecx, 0x605a767f
mov ecx, 0x54e529a3
mov edx, 0x294f3a69
cmove ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x43a658d5
mov ecx, 0x202eb882
mov edx, 0xc7564dd6
cmovl ecx, edx
jmp 0x10038610
mov ecx, 0xe56728d3
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x2df1d84
mov ecx, 0x54e529a3
mov edx, 0xe316f439
cmove ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x566de52b
mov ecx, 0xba5e5773
mov edx, 0x427c737a
cmovl ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x494cbe42
mov ecx, 0xacf0038a
mov edx, 0x8bc30144
cmovl ecx, edx
jmp 0x10038610
push dword [esp + 0x40]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esp + 0x44]
mov ecx, 0x78823178
mov eax, 0x7c961b71
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x65807436
mov ecx, 0x54e529a3
mov edx, 0x33477709
cmove ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0xe6b3dac7
mov ecx, 0xa6ec7fd3
mov edx, 0x55be00f4
cmovl ecx, edx
jmp 0x10038610
mov eax, dword [esp + 0x20]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x88]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x88], 0
mov eax, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x30]
mov eax, dword [eax]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x48]
cmp eax, dword [esp + 0x4c]
mov eax, 0xf3de8b9e
mov ecx, 0x605a767f
jmp 0x100385f9
mov ecx, dword [esp]
cmp ecx, 0x27a91482
mov ecx, 0x54e529a3
mov edx, 0x9970f369
cmove ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x605a767f
mov ecx, 0xc1658aec
mov edx, 0x30689353
cmovl ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x2df1d84
mov ecx, 0xf489d9b7
mov edx, 0x56718566
cmovl ecx, edx
jmp 0x10038610
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x68]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
cmp dword [eax], 0x10
mov dword [esp + 0x3c], ecx
mov eax, dword [esp + 0x3c]
jae 0x10039444
mov eax, dword [esp + 0x34]
jmp 0x10039446
mov eax, dword [esp + 0x1c]
mov eax, dword [eax - 4]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x1c]
mov edx, ecx
not edx
mov eax, edx
and eax, 0x6199b3ba
add eax, ecx
or edx, 0x9e664c45
sub eax, edx
lea ecx, [eax + 0x3ccc988a]
mov edx, ecx
not edx
xor ecx, 0x9e664c45
add ecx, eax
add ecx, 0x3ccc988a
and edx, 0x6199b3ba
lea ecx, [ecx + edx*2]
add eax, ecx
add eax, 0x3ccc988a
sub eax, dword [esp + 0x60]
add eax, 0xfffffffe
imul ecx, eax, 0xa62d9151
mov edx, ecx
and edx, 0x3072f1a
add edx, edx
sub ecx, edx
imul eax, eax, 0x4c5b22a2
or eax, 0xf9f1a1ca
lea edx, [ecx + eax]
add ecx, eax
add ecx, 0x83072f1b
or ecx, 0x589333a7
add ecx, edx
mov eax, 0x79f1a1c8
sub eax, edx
sub eax, edx
and eax, 0x4ed998b0
add eax, ecx
mov ecx, 0x7cf8d0e4
sub ecx, edx
or ecx, 0x589333a7
sub eax, ecx
add eax, 0x342d966a
mov ecx, eax
and ecx, 0x7cf8d0e5
mov edx, eax
and edx, 0x83072f1a
lea edx, [edx + edx*2]
sub edx, ecx
mov ecx, eax
not ecx
add ecx, ecx
or ecx, 0xf9f1a1ca
add ecx, edx
and eax, 0xfcf8d0e5
lea eax, [ecx + eax*2]
imul eax, eax, 0xd55c57b1
lea ecx, [eax + 0x626de79]
mov edx, ecx
and edx, 0xc7587776
add eax, edx
add eax, 0x626de79
mov edx, ecx
xor edx, 0xc7587776
add edx, eax
or ecx, 0xc7587776
sub edx, ecx
add edx, 0x4ae7181d
cmp edx, 0x20
mov eax, 0xd56af4d2
mov ecx, 0x2df1d84
cmovb eax, ecx
mov ecx, 0x78823178
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x88b9e0de
mov ecx, 0x54e529a3
mov edx, 0x3cbec8b0
cmove ecx, edx
jmp 0x10038610
mov dword [esp], eax
mov ecx, 0xae9b081a
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0xf3de8b9e
mov ecx, 0x5946fa92
mov edx, 0x1a6bd954
cmovl ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x2d0466f6
mov ecx, 0x54e529a3
mov edx, 0x34fae1f2
cmove ecx, edx
jmp 0x10038610
lea ecx, [esp + 0x8c]
mov dword [esp + 0x14], ecx
lea eax, [esp + 0x9c]
mov dword [esp + 0x84], eax
lea eax, [esp + 0xa0]
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], ecx
mov ecx, 0x78823178
mov dword [esp + 0x24], 0
mov eax, 0x8a65f80e
mov edx, dword [esp + 0x48]
mov dword [esp + 0x28], edx
jmp 0x10038610
cmp byte [esp + 7], 0
mov eax, 0x27a91482
mov ecx, 0x7c961b71
cmovne eax, ecx
mov ecx, 0x78823178
jmp 0x10038610
mov eax, dword [esp + 0x38]
cmp dword [eax], 0x10
mov eax, dword [esp + 0x3c]
jae 0x10039484
mov eax, dword [esp + 0x34]
jmp 0x10039486
mov ecx, dword [esp]
cmp ecx, 0xd56af4d2
mov ecx, 0x54e529a3
mov edx, 0xc132ebeb
cmove ecx, edx
jmp 0x10038610
mov ebx, dword [esp + 0x18]
mov edx, ebx
and edx, 0xffffffdb
lea edi, [edx + edx - 1]
mov ecx, edi
and ecx, 0x8210153b
sub ecx, edx
sub ecx, edx
or edi, 0x7defeac4
sub ecx, edi
lea esi, [ecx - 0x4202a78]
mov edi, esi
not edi
xor esi, 0x7defeac4
add esi, ecx
add esi, 0xfbdfd588
and edi, 0x210153b
lea esi, [esi + edi*2]
lea edi, [ecx + esi]
add edi, 0xfbdfd588
lea ecx, [ecx + esi - 0x18ae16f0]
mov eax, ebx
not eax
mov dword [esp + 8], eax
and ecx, eax
add ecx, edi
add ecx, 0xeb721388
add ecx, ebx
mov esi, 0x148dec77
sub esi, edi
or esi, ebx
lea ebp, [ecx + esi]
add esi, ecx
add esi, 1
mov ecx, esi
not ecx
mov edi, esi
or edi, 0x148dec7a
add edi, ebp
or esi, 0xeb721385
add esi, edi
mov edi, 0xfffffffe
sub edi, ebp
or edi, 0x148dec7a
add edi, esi
or ecx, 0xeb721385
mov esi, 0xeb72135e
sub esi, edi
sub esi, ecx
lea eax, [ebx + ebx]
and eax, 0x48
mov ebp, eax
xor ebp, 0x48
add ebp, edx
mov edx, ebx
xor ebx, 0x24
add ebx, ebp
mov ebp, dword [esp + 8]
and ebp, 0xffffffdb
add ebp, ebx
and edx, 0x24
add eax, ebp
add eax, 0xffffffdd
or edx, eax
and eax, 0x2d6acb92
mov ebx, eax
xor ebx, 0x2d6acb92
add ebx, eax
lea eax, [edx + edx]
xor eax, 0xa52a68da
add eax, ebx
mov ebx, edx
or ebx, 0x2d6acb92
add ebx, eax
mov eax, edx
not eax
and eax, 0x5295346d
xor edx, 0x2d6acb92
add edx, ebx
add edx, 0x52953470
or edx, eax
add edx, edx
xor edx, 0x5ad59725
lea eax, [edx - 1]
add ecx, edi
add ecx, 0x148deca1
mov edi, ecx
and edi, eax
mov ebx, esi
sub ebx, edi
add edx, ebx
add edx, 0xffffffff
or esi, eax
add esi, edx
add esi, ecx
mov eax, 0xf6c8fd5b
sub eax, esi
mov ecx, eax
and ecx, 0xf6c8fda6
add ecx, eax
mov edi, eax
xor edi, 0xf6c8fda6
add edi, ecx
or eax, 0xf6c8fda6
sub edi, eax
add edi, 0x937025a
mov ebx, dword [esp + 0x60]
mov ecx, 0x78823178
mov eax, 0x88b9e0de
jmp 0x10038610
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x58]
add eax, 0x18
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x4c]
mov eax, 0x8a65f80e
mov ecx, 0x605a767f
cmove eax, ecx
mov ecx, dword [esp + 0x5c]
mov ecx, 0x78823178
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x24], edx
jmp 0x10038610
mov ecx, 0xc590e184
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x494cbe42
mov ecx, 0x54e529a3
mov edx, 0xbe05f5c5
cmove ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x27a91482
mov ecx, 0x8b499c1a
mov edx, 0xcf9fcffb
cmovl ecx, edx
jmp 0x10038610
mov ecx, dword [esp]
cmp ecx, 0x7c961b71
mov ecx, 0x7fee1b39
mov edx, 0xcc480e78
cmovl ecx, edx
jmp 0x10038610
mov eax, dword [esp + 0x54]
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x18]
mov eax, ecx
not eax
lea edx, [ecx + eax*2]
lea eax, [edx + ecx*2]
lea edi, [edx + ecx*2]
add edi, 0x896ecdb0
mov ecx, edi
and ecx, 0x896ecdad
mov edx, edi
and edx, 0x76913252
add edx, edx
sub ecx, edx
add ecx, eax
add ecx, 0x896ecdb0
xor edi, 0x896ecdad
add edi, ecx
mov ecx, 0x7691324f
sub ecx, eax
or ecx, 0x896ecdad
sub edi, ecx
add edi, 0xed2264a5
cmp edi, 0x1000
mov eax, 0x88b9e0de
mov ecx, 0xe6b3dac7
cmovae eax, ecx
mov ecx, 0x78823178
mov ebx, dword [esp + 0x1c]
jmp 0x10038610
mov ecx, dword [ecx]
push 0
lea edx, [esp + 0x8c]
push edx
push eax
push ecx
push dword [esp + 0x50]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov ecx, dword [esp + 0x88]
lea eax, [ecx + ecx]
neg eax
add eax, ecx
add eax, 1
lea eax, [eax + eax*2]
lea eax, [eax + ecx*2]
mov edx, ecx
mov ecx, 3
sub ecx, eax
not ecx
mov ebx, dword [esp + 0x24]
and ecx, ebx
add ecx, edx
mov eax, ecx
not eax
and eax, 0x867ed33
lea eax, [eax + ecx*2]
or ecx, 0x867ed33
sub eax, ecx
lea ecx, [eax - 0x867ed33]
mov esi, ecx
not esi
and esi, ebx
lea esi, [eax + esi*2]
add esi, 0xf79812cd
add esi, ebx
or ecx, ebx
not ecx
lea ecx, [esi + ecx*2]
lea esi, [ecx + eax*2]
add esi, 0xef30259a
mov dword [esp + 0x10], esi
lea eax, [ecx + eax*2 - 0x867ed31]
mov dword [esp + 0x74], eax
mov esi, edx
mov dword [esp + 0xc], edx
mov eax, edx
not eax
mov dword [esp + 0x78], eax
lea eax, [edx + eax*2]
add eax, 1
mov ecx, eax
and ecx, 0xa0726284
mov edi, eax
xor edi, 0xa0726284
add edi, ecx
xor eax, 0x5f8d9d7b
add eax, edi
xor edx, 0xa0726284
add edx, esi
mov edi, esi
or edi, 0xa0726284
sub edx, edi
mov ebp, 0xfffffffe
sub ebp, eax
mov esi, ebx
mov eax, ebx
not eax
mov edi, ebx
and edi, 0xa0726284
add edi, eax
mov ecx, eax
mov dword [esp + 8], eax
mov eax, ebx
xor eax, 0xa0726284
lea ebx, [eax + edi]
add ebx, 1
mov eax, esi
and eax, 0x5f8d9d7b
mov edi, eax
xor edi, 0x5f8d9d7b
add edi, eax
mov eax, ecx
and eax, 0xa0726284
add eax, edi
lea edi, [esi + eax]
add edi, 1
or edi, ebx
or ebp, edx
mov eax, ebp
not eax
add eax, edx
mov ebx, edi
not ebx
and ebx, eax
mov ecx, eax
xor ecx, edi
sub ecx, ebx
sub edx, ebp
add edx, ecx
and edi, eax
not edi
add edi, edx
add edi, edi
mov eax, dword [esp + 0x74]
mov ecx, eax
and ecx, edi
add ecx, ecx
sub ecx, eax
xor edi, eax
mov edx, dword [esp + 0xc]
mov ebx, edx
add edi, ecx
mov ebp, esi
xor ebp, edx
sub edi, dword [esp + 0x10]
and ebx, dword [esp + 8]
lea eax, [ebx + esi]
add eax, 1
sub eax, ebp
add eax, edx
add eax, 1
mov dword [esp + 0x10], eax
or edx, esi
mov eax, edx
not eax
lea ecx, [edx + eax*2]
mov dword [esp + 0xc], ecx
mov ecx, 0xfffffffd
sub ecx, dword [esp + 0xc]
lea edx, [edx + eax*2]
add edx, 2
add edi, 0xf79812cb
and ecx, edi
and edi, edx
add ecx, edi
mov eax, esi
mov edi, dword [esp + 0x78]
and eax, edi
add eax, edi
add eax, esi
xor esi, edi
sub eax, esi
lea eax, [eax + ebx*2]
sub eax, ebp
sub eax, ebp
mov ebx, dword [esp + 8]
or edi, ebx
mov esi, dword [esp + 0x10]
lea esi, [esi + edi*2]
or esi, eax
mov eax, esi
mov edi, esi
and edi, 0xb730292d
add esi, esi
xor esi, 0x919fada4
sub esi, edi
lea edi, [ecx + edx]
or eax, 0xb730292d
add esi, eax
add esi, 1
lea eax, [edi + edi]
add eax, 0xfffffffe
neg edi
xor esi, 0x48cfd6d2
add ecx, edx
add ecx, 0xffffffff
and ecx, 0x55ce6fba
add ecx, edi
mov edx, edi
xor edx, 0x55ce6fba
add edx, ecx
mov ecx, edi
xor ecx, 0xaa319045
lea ecx, [ecx + ecx*2]
add ecx, edx
lea edx, [esi + 1]
or edi, 0xaa319045
sub ecx, edi
or eax, 0xab9cdf74
sub ecx, eax
lea eax, [ecx + 0x55ce6fba]
mov edi, eax
or edi, edx
sub edx, eax
add edx, edi
mov edi, 0xfffffffe
sub edi, esi
or edi, eax
add edi, edx
lea eax, [ecx + edi]
add eax, 0x55ce6fba
add ecx, edi
add ecx, 0x55ce6fbb
mov edx, ecx
and edx, 0x55ce6fba
add eax, edx
add eax, 1
xor edx, 0x55ce6fba
add edx, eax
not ecx
mov eax, ecx
and eax, 0xaa319045
add eax, edx
or ecx, 0x55ce6fba
sub eax, ecx
lea ecx, [eax - 0x55ce6fba]
mov edx, ecx
xor edx, 0xd726cad2
add eax, edx
add eax, 0xaa319046
mov edx, ecx
not edx
and edx, 0x28d9352d
add edx, eax
and ecx, 0xd726cad2
add ecx, edx
add ecx, ebx
imul eax, ecx, 0x6034e4d1
lea ecx, [eax - 0x43aca00e]
mov edx, ecx
and edx, 0x140bb4c9
add edx, edx
sub ecx, edx
add eax, eax
add eax, 0x78a6bfe4
or eax, 0xd7e8966c
add eax, ecx
imul eax, eax, 0xf579f431
lea ecx, [eax - 0x32c1e2a7]
mov edx, ecx
or ecx, 0x2ffdd64
mov esi, 0x2c1e2a6
sub esi, eax
or esi, 0xfd00229b
add esi, ecx
and edx, 0xfd00229b
lea ecx, [eax + edx*2]
add ecx, 0xcd3e1d59
add esi, eax
sub ecx, esi
lea eax, [ecx + 0x38c19d6f]
mov edx, eax
and edx, 0xbbf7dd55
add ecx, edx
add ecx, 0x38c19d6f
not eax
or eax, 0x440822aa
add eax, ecx
add eax, 0x41084546
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x50]
mov eax, dword [eax]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
cmp eax, 0x10
mov eax, 0x566de52b
mov ecx, 0x494cbe42
cmovae eax, ecx
mov ecx, 0x78823178
mov edi, dword [esp + 0x80]
mov ebx, dword [esp + 0x7c]
jmp 0x10038610
mov eax, dword [eax]
sub esp, 0x1c
movaps xmm0, xmmword [0x10069960]
movups xmmword [esp + 4], xmm0
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [esp + 0x20], eax
cmp eax, 0xffffffff
mov eax, 0x1fee6cf9
mov ecx, 0x2d0466f6
jmp 0x100385f9
mov eax, dword [eax]
sub esp, 0x1c
movaps xmm0, xmmword [0x10069950]
movups xmmword [esp + 4], xmm0
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [esp + 0x20], eax
cmp eax, 0xffffffff
mov eax, 0x1fee6cf9
jmp 0x100385f4
cmp ecx, 0xfe62ffa8
jne 0x10038610
jmp 0x100394de
cmp ecx, 0xc132ebeb
jne 0x10038610
call fcn.1005c2cd
mov ecx, dword [esp + 0xa4]
xor ecx, esp
call fcn.1005a81a
add esp, 0xa8
pop esi
pop edi
pop ebx
pop ebp
ret