Function at 0x425920
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x60
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
mov dword [esp + 4], eax
mov eax, dword [0x5c0b00]
xor eax, ebp
mov dword [esp + 0x58], eax
mov dword [esp], ecx
mov dword [esp + 0x24], esi
mov dword [esp + 0x34], esi
mov dword [esp + 0x10], edx
mov dword [esp + 0x30], edx
mov ecx, 0x4f239549
jmp 0x4259a0
mov eax, dword [0x5c1d9c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0xc76fe1cf
mov esi, 0x6fde4d00
cmove ecx, esi
cmp dword [0x5c1da0], 0xa
mov edx, 0xc76fe1cf
cmovge ecx, edx
setl dl
xor dl, al
cmovne ecx, esi
nop word [eax + eax]
cmp ecx, 0x1c87c575
jg 0x425a00
cmp ecx, 0xc76fe1ce
jg 0x425a60
cmp ecx, 0xafe23433
jg 0x425b71
cmp ecx, 0x9ab99c07
jg 0x425cc1
cmp ecx, 0x85f383a9
je 0x425f39
cmp ecx, 0x8d066240
je 0x425f83
cmp ecx, 0x8ebc7985
jne 0x4259a0
mov ecx, 0x3c0a74e8
jmp 0x4259a0
cmp ecx, 0x4fafea80
jg 0x425ad0
cmp ecx, 0x3c238817
jg 0x425bab
cmp ecx, 0x33be409d
jg 0x425cef
cmp ecx, 0x1c87c576
je 0x425fa9
cmp ecx, 0x2fadb5a4
je 0x425fe3
cmp ecx, 0x325e4a8f
jne 0x4259a0
mov ecx, 0x8cffc5c
jmp 0x4259a0
cmp ecx, 0x1e41620
jg 0x425bf2
cmp ecx, 0xe031c34d
jg 0x425d47
cmp ecx, 0xc76fe1cf
je 0x425ffc
cmp ecx, 0xceb2d537
je 0x426022
cmp ecx, 0xdceaddd4
jne 0x4259a0
mov edx, dword [0x5c1d9c]
mov eax, dword [0x5c1da0]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov esi, 0x4d7ac0ec
mov edi, 0x364a4dd
jmp 0x426232
cmp ecx, 0x6afc20e7
jle 0x425c5d
cmp ecx, 0x7276ec7d
jg 0x425db2
cmp ecx, 0x6afc20e8
je 0x426034
cmp ecx, 0x6f0d6fc0
je 0x42595e
cmp ecx, 0x6fde4d00
jne 0x4259a0
mov ecx, dword [esp]
push dword [esp + 0x24]
push dword [esp + 0x14]
push dword [esp + 0xc]
call fcn.00429550
mov edi, dword [0x5c1d9c]
mov esi, dword [0x5c1da0]
mov dword [esp + 0x44], esi
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp esi, 0xa
setl bh
xor bh, bl
mov ebx, 0xc76fe1cf
mov esi, 0x8ebc7985
cmovne ebx, esi
test edi, ecx
mov ecx, ebx
cmove ecx, esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
cmp dword [esp + 0x44], 0xa
cmovge ecx, ebx
jmp 0x4259a0
cmp ecx, 0xc43dc332
jg 0x425e09
cmp ecx, 0xafe23434
je 0x42604e
cmp ecx, 0xb7a36189
je 0x426081
cmp ecx, 0xbf33c631
jne 0x4259a0
mov ecx, 0x44416462
jmp 0x4259a0
cmp ecx, 0x47f3e9cf
jg 0x425e60
cmp ecx, 0x3c238818
je 0x42619a
cmp ecx, 0x3cd4c793
je 0x4261ac
cmp ecx, 0x44416462
jne 0x4259a0
cmp dword [esp + 0x4c], 0
mov ecx, 0x9ab99c08
mov eax, 0xafe23434
cmove ecx, eax
jmp 0x4259a0
cmp ecx, 0x6c57953
jg 0x425ea4
cmp ecx, 0x1e41621
je 0x4261e7
cmp ecx, 0x364a4dd
je 0x4261f1
cmp ecx, 0x5c0daaa
jne 0x4259a0
mov edx, dword [esp + 0x10]
mov ecx, 0x85a61cb5
sub edx, ecx
mov esi, dword [esp + 0x24]
mov eax, 0xe9457c94
sbb esi, eax
sub edx, dword [esp + 0x54]
sbb esi, 0
add edx, ecx
mov dword [esp + 0x18], edx
adc esi, eax
mov dword [esp + 0x14], esi
mov ecx, 0xc4702695
mov dword [esp + 8], 1
jmp 0x4259a0
cmp ecx, 0x5c6c1b73
jg 0x425f17
cmp ecx, 0x4fafea81
je 0x4261fb
cmp ecx, 0x530a0888
je 0x426205
cmp ecx, 0x5b5e84f5
jne 0x4259a0
mov eax, dword [0x5c1d9c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x7276ec7e
mov esi, 0x85f383a9
cmove ecx, esi
cmp dword [0x5c1da0], 0xa
mov edx, 0x7276ec7e
jmp 0x42598c
cmp ecx, 0x9ab99c08
je 0x426247
cmp ecx, 0xadc709d3
je 0x426251
cmp ecx, 0xae9ce76a
jne 0x4259a0
mov ecx, 0x2fadb5a4
jmp 0x4259a0
cmp ecx, 0x33be409e
je 0x426268
cmp ecx, 0x36d0d6a6
je 0x426281
cmp ecx, 0x3c0a74e8
jne 0x4259a0
mov eax, dword [0x5c1d9c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x325e4a8f
mov esi, 0x8cffc5c
cmove ecx, esi
cmp dword [0x5c1da0], 0xa
mov edx, 0x325e4a8f
jmp 0x42598c
cmp ecx, 0xe031c34e
je 0x426293
cmp ecx, 0xe2584149
je 0x4263a9
cmp ecx, 0xf447a982
jne 0x4259a0
mov eax, dword [0x5c1d9c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x3c238818
mov edi, 0x1e41621
cmove ecx, edi
cmp dword [0x5c1da0], 0xa
setl dl
mov esi, 0x3c238818
cmovge ecx, esi
xor dl, al
cmovne ecx, edi
mov dword [esp + 8], 0
jmp 0x4259a0
cmp ecx, 0x7276ec7e
je 0x4263dd
cmp ecx, 0x751d8f9e
je 0x4263e7
cmp ecx, 0x7ea274b3
jne 0x4259a0
mov eax, dword [0x5c1d9c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0x5c6c1b74
mov esi, 0xb7a36189
cmove ecx, esi
cmp dword [0x5c1da0], 0xa
mov edx, 0x5c6c1b74
jmp 0x42598c
cmp ecx, 0xc43dc333
je 0x4263f1
cmp ecx, 0xc4702695
je 0x426435
cmp ecx, 0xc73cc8b5
jne 0x4259a0
mov edx, dword [0x5c1d9c]
mov eax, dword [0x5c1da0]
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x632b0b43
mov esi, 0x530a0888
jmp 0x42641f
cmp ecx, 0x47f3e9d0
je 0x426447
cmp ecx, 0x4d7ac0ec
je 0x426461
cmp ecx, 0x4f239549
jne 0x4259a0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
cmp eax, 1
sbb ecx, 0
mov ecx, 0x33be409e
mov eax, 0x47f3e9d0
cmovl ecx, eax
jmp 0x4259a0
cmp ecx, 0x6c57954
je 0x42646b
cmp ecx, 0x7992c35
je 0x4264a6
cmp ecx, 0x8cffc5c
jne 0x4259a0
mov eax, dword [0x5c1d9c]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x325e4a8f
mov esi, 0x64e69ca3
cmove ecx, esi
cmp dword [0x5c1da0], 0xa
setl dl
mov edi, 0x325e4a8f
cmovge ecx, edi
xor dl, al
mov eax, dword [esp + 0x18]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
cmovne ecx, esi
jmp 0x4259a0
cmp ecx, 0x5c6c1b74
je 0x4264bd
cmp ecx, 0x632b0b43
jne 0x4266a0
mov ecx, 0x530a0888
jmp 0x4259a0
mov edx, dword [0x5c1d9c]
mov eax, dword [0x5c1da0]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov esi, 0x7276ec7e
mov ebx, 0xbf33c631
cmovne esi, ebx
test edx, ecx
mov ecx, esi
cmove ecx, ebx
cmp eax, 0xa
cmovge ecx, esi
mov eax, dword [esp + 8]
mov dword [esp + 0x4c], eax
jmp 0x4259a0
mov eax, dword [esp]
push dword [eax + 0x4c]
push dword [esp + 0x58]
push 1
push dword [esp + 0x10]
call fcn.00594a1e
add esp, 0x10
sub dword [esp + 0x54], eax
mov ecx, 0x36d0d6a6
jmp 0x4259a0
mov ecx, dword [esp]
call fcn.004228c0
mov edx, dword [0x5c1d9c]
mov eax, dword [0x5c1da0]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov esi, 0xceb2d537
mov edi, 0x751d8f9e
jmp 0x426232
mov eax, dword [esp]
cmp dword [eax + 0x4c], 0
mov ecx, 0xc43dc333
mov eax, 0x6c57954
cmove ecx, eax
jmp 0x4259a0
mov ecx, dword [esp]
push dword [esp + 0x24]
push dword [esp + 0x14]
push dword [esp + 0xc]
call fcn.00429550
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
mov ecx, 0x6fde4d00
jmp 0x4259a0
mov ecx, dword [esp]
call fcn.004228c0
mov ecx, 0x1c87c576
jmp 0x4259a0
cmp dword [esp + 0x54], 0x1000
mov ecx, 0x7992c35
mov eax, 0x3cd4c793
cmovae ecx, eax
jmp 0x4259a0
mov eax, dword [0x5c1d9c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0x4d7ac0ec
mov esi, 0xdceaddd4
cmove ecx, esi
cmp dword [0x5c1da0], 0xa
mov edx, 0x4d7ac0ec
jmp 0x42598c
mov eax, dword [esp + 0x50]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x2c], eax
mov eax, dword [0x5c20d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5c20d8], 0xa
setl cl
or cl, al
mov esi, 0x257fa2af
mov eax, 0x171dad57
cmovne esi, eax
mov ecx, 0x257fa2af
mov eax, 0x23de477
cmovne ecx, eax
mov eax, 0x3c1c5566
nop word cs:[eax + eax]
cmp eax, 0x23de476
jle 0x426110
cmp eax, 0x257fa2ae
jg 0x426140
cmp eax, 0x23de477
je 0x426168
cmp eax, 0x171dad57
jne 0x4260e0
jmp 0x4265cc
cmp eax, 0xd3db2cfb
je 0x42616f
cmp eax, 0xe52df0f6
je 0x426178
cmp eax, 0xf396ed4a
jne 0x4260e0
lea eax, [esp + 0x50]
mov dword [esp + 0xc], eax
lea eax, [esp + 0xc]
jmp 0x426184
cmp eax, 0x257fa2af
je 0x426190
cmp eax, 0x3c1c5566
jne 0x4260e0
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
mov eax, 0xe52df0f6
mov edi, 0xf396ed4a
cmovb eax, edi
jmp 0x4260e0
mov eax, esi
jmp 0x4260e0
mov eax, ecx
mov ebx, edx
jmp 0x4260e0
lea eax, [esp + 0x54]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1c]
mov edx, dword [eax]
mov eax, 0xd3db2cfb
jmp 0x4260e0
mov eax, 0x23de477
jmp 0x4260e0
mov ecx, 0xf447a982
mov dword [esp + 8], 0
jmp 0x4259a0
mov eax, dword [esp]
push dword [eax + 0x4c]
push 0xfff
push 1
mov esi, dword [esp + 0x10]
push esi
call fcn.00594a1e
add esp, 0x10
add esi, eax
mov dword [esp + 4], esi
sub dword [esp + 0x54], eax
cmp eax, 0xfff
mov ecx, 0x5c0daaa
mov eax, 0xe2584149
cmove ecx, eax
jmp 0x4259a0
mov ecx, 0xc4702695
jmp 0x4259a0
mov ecx, 0x6c57954
jmp 0x4259a0
mov ecx, 0x6afc20e8
jmp 0x4259a0
mov edx, dword [0x5c1d9c]
mov eax, dword [0x5c1da0]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov esi, 0x632b0b43
mov edi, 0x4fafea81
cmovne esi, edi
test edx, ecx
mov ecx, esi
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, esi
jmp 0x4259a0
mov ecx, 0x3c0a74e8
jmp 0x4259a0
cmp dword [esp + 0x48], 0
mov ecx, 0x5b5e84f5
mov eax, 0xc73cc8b5
cmove ecx, eax
jmp 0x4259a0
mov eax, dword [esp]
cmp dword [eax + 0x38], 0
mov ecx, 0x6f0d6fc0
mov eax, 0xe031c34e
cmove ecx, eax
jmp 0x4259a0
mov ecx, 0x5b5e84f5
mov dword [esp + 8], 0
jmp 0x4259a0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x54], eax
mov eax, dword [esp]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
mov eax, dword [0x5c230c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete cl
cmp dword [0x5c2310], 0xa
setge dl
setl ah
xor ah, cl
or dl, al
xor dl, 1
or dl, ah
mov eax, 0xda75b7a0
mov ecx, 0x7f50d05c
cmovne eax, ecx
mov ecx, 0xda75b7a0
mov edx, 0x574bb358
cmovne ecx, edx
mov esi, 0x47cff195
nop dword [eax]
cmp esi, 0x47cff194
jle 0x426330
cmp esi, 0x74ffc300
jg 0x426350
cmp esi, 0x47cff195
je 0x426369
cmp esi, 0x574bb358
jne 0x426300
mov esi, eax
jmp 0x426300
cmp esi, 0xda75b7a0
je 0x42637d
cmp esi, 0xaab10dd
je 0x426387
cmp esi, 0x284ec483
jne 0x426300
jmp 0x426647
cmp esi, 0x74ffc301
je 0x4263a2
cmp esi, 0x7f50d05c
jne 0x426300
xor edx, edx
mov esi, 0x284ec483
jmp 0x426300
cmp dword [esp + 0x1c], 0
mov esi, 0xaab10dd
mov edi, 0x74ffc301
cmove esi, edi
jmp 0x426300
mov esi, 0x574bb358
jmp 0x426300
mov edx, dword [esp + 0xc]
mov edx, dword [edx + 0x2c]
mov edx, dword [edx]
mov dword [esp + 0x20], edx
mov esi, 0x284ec483
mov edx, dword [esp + 0x20]
jmp 0x426300
mov esi, ecx
jmp 0x426300
mov eax, dword [0x5c1d9c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x3c238818
mov esi, 0xf447a982
cmove ecx, esi
cmp dword [0x5c1da0], 0xa
mov edx, 0x3c238818
jmp 0x42598c
mov ecx, 0x85f383a9
jmp 0x4259a0
mov ecx, 0x6afc20e8
jmp 0x4259a0
mov edx, dword [0x5c1d9c]
mov eax, dword [0x5c1da0]
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xceb2d537
mov esi, 0x1c87c576
cmovne edx, esi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, esi
cmp eax, 0xa
cmovge ecx, edx
jmp 0x4259a0
mov eax, dword [esp + 8]
mov dword [esp + 0x48], eax
mov ecx, 0xadc709d3
jmp 0x4259a0
mov dword [esp + 0x18], 0
mov ecx, 0x3c0a74e8
mov dword [esp + 0x14], 0
jmp 0x4259a0
mov ecx, 0xdceaddd4
jmp 0x4259a0
mov edx, dword [esp + 0x10]
mov ecx, 0xa03cb63c
sub edx, ecx
mov esi, dword [esp + 0x24]
mov eax, 0x309d1b8a
sbb esi, eax
sub edx, dword [esp + 0x54]
sbb esi, 0
add edx, ecx
mov dword [esp + 0x18], edx
adc esi, eax
mov dword [esp + 0x14], esi
mov ecx, 0x9ab99c08
mov dword [esp + 8], 1
jmp 0x4259a0
cmp dword [esp + 0x54], 0
mov ecx, 0x8d066240
mov eax, 0x36d0d6a6
cmove ecx, eax
jmp 0x4259a0
mov eax, dword [esp + 0x50]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x2c], eax
mov eax, dword [0x5c20d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5c20d8], 0xa
setl cl
or cl, al
mov eax, 0x257fa2af
mov ecx, 0x171dad57
cmovne eax, ecx
mov ecx, 0x257fa2af
mov edx, 0x23de477
cmovne ecx, edx
mov esi, 0x3c1c5566
nop
cmp esi, 0x23de476
jle 0x426540
cmp esi, 0x257fa2ae
jg 0x426570
cmp esi, 0x23de477
je 0x42659a
cmp esi, 0x171dad57
jne 0x426510
jmp 0x42665f
cmp esi, 0xd3db2cfb
je 0x4265a1
cmp esi, 0xe52df0f6
je 0x4265aa
cmp esi, 0xf396ed4a
jne 0x426510
lea esi, [esp + 0x50]
mov dword [esp + 0xc], esi
lea esi, [esp + 0xc]
jmp 0x4265b6
cmp esi, 0x257fa2af
je 0x4265c2
cmp esi, 0x3c1c5566
jne 0x426510
mov esi, dword [esp + 0x28]
cmp esi, dword [esp + 0x2c]
mov esi, 0xe52df0f6
mov edi, 0xf396ed4a
cmovb esi, edi
jmp 0x426510
mov esi, eax
jmp 0x426510
mov esi, ecx
mov edx, ebx
jmp 0x426510
lea esi, [esp + 0x54]
mov dword [esp + 0x1c], esi
lea esi, [esp + 0x1c]
mov ebx, dword [esi]
mov esi, 0xd3db2cfb
jmp 0x426510
mov esi, 0x23de477
jmp 0x426510
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x20]
mov esi, dword [eax]
mov eax, dword [esp]
mov eax, dword [eax + 0x1c]
push esi
push dword [eax]
mov ebx, dword [esp + 0xc]
push ebx
call fcn.0058dc10
add esp, 0xc
sub dword [esp + 0x54], esi
mov eax, dword [esp]
mov ecx, dword [eax + 0x2c]
sub dword [ecx], esi
mov eax, dword [eax + 0x1c]
add dword [eax], esi
mov edx, dword [0x5c1d9c]
mov eax, dword [0x5c1da0]
lea ecx, [edx - 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x5c6c1b74
mov edi, 0xae9ce76a
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
add ebx, esi
mov dword [esp + 4], ebx
jmp 0x4259a0
mov dword [esp + 0x50], edx
test edx, edx
mov ecx, 0x7ea274b3
mov eax, 0x2fadb5a4
cmove ecx, eax
jmp 0x4259a0
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x20]
mov esi, dword [eax]
mov eax, dword [esp]
mov eax, dword [eax + 0x1c]
push esi
push dword [eax]
mov ebx, dword [esp + 0xc]
push ebx
call fcn.0058dc10
add esp, 0xc
sub dword [esp + 0x54], esi
add ebx, esi
mov dword [esp + 4], ebx
mov eax, dword [esp]
mov ecx, dword [eax + 0x2c]
sub dword [ecx], esi
mov eax, dword [eax + 0x1c]
add dword [eax], esi
mov ecx, 0xb7a36189
jmp 0x4259a0
cmp ecx, 0x64e69ca3
jne 0x4259a0
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x58]
xor ecx, ebp
call fcn.005892d5
mov eax, esi
mov edx, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc