Function at 0x10004fa0
Capabilities:
Write file on windows

Disassembly:
sub esp, 0xe18
mov eax, dword [0x10056b88]
xor eax, esp
mov dword [esp + 0xe14], eax
push ebx
push esi
xor ebx, ebx
push 0x1ff
lea eax, [esp + 0x221]
push ebx
push eax
mov byte [esp + 0x228], bl
call fcn.10024c80
push 0x1ff
lea ecx, [esp + 0x2d]
push ebx
push ecx
mov byte [esp + 0x34], bl
call fcn.10024c80
push 0x1ff
lea edx, [esp + 0x439]
push ebx
push edx
mov byte [esp + 0x440], bl
call fcn.10024c80
push 0x3fe
lea eax, [esp + 0x646]
push ebx
push eax
mov word [esp + 0x64c], bx
call fcn.10024c80
push 0x3fe
lea ecx, [esp + 0xa52]
push ebx
push ecx
mov word [esp + 0xa58], bx
call fcn.10024c80
push 0x10044b68
push ebx
push 0x10044b60
push 0x10044304
call fcn.10017350
add esp, 0x4c
push ebx
push ebx
push 0x200
lea edx, [esp + 0x228]
push edx
push 0xffffffffffffffff
push 0x102e5a40
push ebx
push 1
call dword [0x100440c8]
call dword [0x100440d0]
mov byte [0x102e6260], al
lea eax, [esp + 8]
push eax
call dword [0x100440cc]
mov eax, 0x10060f38
lea edx, [eax + 1]
jmp 0x10005090
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x10005090
sub eax, edx
push edi
jne 0x100050bc
mov edi, edi
movzx ecx, word [eax + 0x102e5e46]
mov word [esp + eax + 0x620], cx
add eax, 2
cmp cx, bx
jne 0x100050a0
jmp 0x100051a0
xor eax, eax
mov edi, edi
movzx ecx, word [eax + 0x102e5440]
mov word [esp + eax + 0x620], cx
add eax, 2
cmp cx, bx
jne 0x100050c0
mov eax, 0x10060f38
lea edx, [eax + 1]
nop
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x100050e0
sub eax, edx
mov edx, dword [0x10055080]
push eax
lea ecx, [esp + 0xa24]
push ecx
push 0xffffffffffffffff
push 0x10060f38
push ebx
push edx
call dword [0x100440c0]
lea eax, [esp + 0x620]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
cmp cx, bx
jne 0x10005113
mov ecx, dword [0x10044b54]
mov edx, dword [0x10044b58]
mov dword [eax], ecx
mov cx, word [0x10044b5c]
mov dword [eax + 4], edx
mov word [eax + 8], cx
lea eax, [esp + 0xa20]
mov edx, eax
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x10005144
lea edi, [esp + 0x620]
sub eax, edx
add edi, 0xfffffffe
jmp 0x10005160
mov cx, word [edi + 2]
add edi, 2
cmp cx, bx
jne 0x10005160
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x620]
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
cmp ax, bx
jne 0x10005186
mov ecx, 6
mov esi, 0x10044b38
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
call fcn.10013c80
cmp eax, 1
jne 0x100051c8
lea edx, [esp + 0x620]
push edx
push 0x200
lea eax, [esp + 0x28]
push eax
push 0x10044b2c
push 0x10044b1c
jmp 0x100051e4
lea ecx, [esp + 0x620]
push ecx
push 0x200
lea edx, [esp + 0x28]
push edx
push 0x10044b2c
push 0x10044b0c
push 0x10044304
call fcn.10017460
add esp, 0x18
push 0x400
push ebx
push 0x102ee280
call fcn.10024c80
lea eax, [esp + 0x2c]
add esp, 0xc
mov ecx, eax
lea ebx, [ebx]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005210
lea edi, [esp + 0x220]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x10005227
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor eax, eax
mov cl, byte [esp + eax + 0x20]
mov byte [eax + 0x102ee280], cl
add eax, 1
cmp cl, bl
jne 0x10005241
push 0x200
lea eax, [esp + 0x24]
push ebx
push eax
call fcn.10024c80
movzx ecx, word [esp + 0x26]
movzx edx, word [esp + 0x24]
movzx eax, word [esp + 0x22]
push ecx
movzx ecx, word [esp + 0x24]
push edx
movzx edx, word [esp + 0x26]
push eax
movzx eax, word [esp + 0x26]
push ecx
movzx ecx, word [esp + 0x28]
push edx
push eax
push ecx
lea edx, [esp + 0x48]
push 0x10044ae4
push edx
call fcn.10024ba4
movzx eax, word [esp + 0x4a]
movzx ecx, word [esp + 0x48]
push eax
push ecx
push 0x10044ad8
push 0x10058488
call fcn.10024ba4
add esp, 0x40
push 0x200
lea edx, [esp + 0x424]
push ebx
push edx
call fcn.10024c80
push 0x102e5840
push 0x100
lea eax, [esp + 0x434]
push eax
push 0x10044668
push 0x10044664
push 0x10044304
call fcn.10017460
lea edi, [esp + 0x244]
add esp, 0x24
add edi, 0xffffffff
nop
mov al, byte [edi + 1]
add edi, 1
cmp al, bl
jne 0x10005300
push ebp
mov bp, word [0x10044660]
lea eax, [esp + 0x424]
mov word [edi], bp
mov ecx, eax
mov edi, edi
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005320
lea edi, [esp + 0x224]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x10005337
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x224]
add edi, 0xffffffff
lea esp, [esp]
mov al, byte [edi + 1]
add edi, 1
cmp al, bl
jne 0x10005360
mov word [edi], bp
mov edi, 0x102ee280
add edi, 0xffffffff
mov al, byte [edi + 1]
add edi, 1
cmp al, bl
jne 0x10005375
lea eax, [esp + 0x424]
mov word [edi], bp
mov ecx, eax
jmp 0x10005390
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005390
mov edi, 0x102ee280
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x100053a5
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x102ee280
add edi, 0xffffffff
mov al, byte [edi + 1]
add edi, 1
cmp al, bl
jne 0x100053c5
lea eax, [esp + 0x24]
mov word [edi], bp
mov ecx, eax
pop ebp
lea esp, [esp]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x100053e0
lea edi, [esp + 0x220]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x100053f7
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [esp + 0x20]
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005415
mov edi, 0x102ee280
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
lea ebx, [ebx]
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x10005430
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0x102e5840
push 0x102ee280
mov ecx, eax
and ecx, 3
push 0x10044ad0
push 0x10044304
rep movsb byte es:[edi], byte [esi]
call fcn.10017510
push 0x102e5840
push 0x10058488
push 0x10044ac4
push 0x10044304
call fcn.10017510
push 0x200
lea ecx, [esp + 0x44]
push ebx
push ecx
call fcn.10024c80
mov eax, dword [0x10058484]
add esp, 0x2c
cmp eax, ebx
pop edi
je 0x100054a0
push eax
call fcn.10025497
add esp, 4
lea edx, [esp + 0x21c]
push 0x10044ac0
push edx
mov dword [0x10058484], ebx
call fcn.100255d7
add esp, 8
cmp eax, ebx
mov dword [0x10058484], eax
jne 0x100054dd
push 5
push 0x602f
push 0x607e
call fcn.10021b00
add esp, 0xc
jmp 0x10005f4c
push eax
push 1
push 1
push 0x102e6260
call fcn.10024e59
push 0x200
lea eax, [esp + 0x230]
push ebx
push eax
call fcn.10024c80
add esp, 0x1c
push ebx
push ebx
push 0x100
lea ecx, [esp + 0x228]
push ecx
push 0xffffffffffffffff
push 0x102e5240
push ebx
push 1
call dword [0x100440c8]
lea eax, [esp + 0x21c]
lea ecx, [eax + 1]
jmp 0x10005530
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005530
mov edx, dword [0x10058484]
push edx
sub eax, ecx
push eax
lea eax, [esp + 0x224]
push 1
push eax
call fcn.100015a0
mov ecx, dword [0x10058484]
push ecx
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea edx, [esp + 0x40]
push ebx
push edx
call fcn.10024c80
push 0x102e5840
push 0x100
lea eax, [esp + 0x50]
push eax
push 0x10044ab4
push 0x10044aac
push 0x10044304
call fcn.10017460
mov ecx, dword [0x10058484]
add esp, 0x44
push ecx
push 8
push 1
push 0x10044aa0
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x100055c0
mov edx, dword [0x10058484]
push edx
sub eax, ecx
push eax
lea eax, [esp + 0x24]
push 1
push eax
call fcn.100015a0
mov ecx, dword [0x10058484]
push ecx
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea edx, [esp + 0x40]
push ebx
push edx
call fcn.10024c80
push 0x102e5840
push 0x100
lea eax, [esp + 0x50]
push eax
push 0x10044ab4
push 0x10044a90
push 0x10044304
call fcn.10017460
mov ecx, dword [0x10058484]
add esp, 0x44
push ecx
push 0xe
push 1
push 0x10044a80
call fcn.100015a0
lea edx, [esp + 0x2c]
push edx
call fcn.10001d60
push 0x200
lea eax, [esp + 0x34]
push ebx
push eax
call fcn.10024c80
push 0x102e5840
push 0x100
lea ecx, [esp + 0x44]
push ecx
push 0x10044ab4
push 0x10044a74
push 0x10044304
call fcn.10017460
mov edx, dword [0x10058484]
push edx
push 0xc
push 1
push 0x10044a64
call fcn.100015a0
lea eax, [esp + 0x64]
add esp, 0x48
push eax
call fcn.10001d60
push 0x200
lea ecx, [esp + 0x24]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x34]
push edx
push 0x10044a60
push 0x10044a58
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
push eax
push 8
push 1
push 0x10044a4c
call fcn.100015a0
add esp, 0x38
lea eax, [esp + 0x1c]
lea ecx, [eax + 1]
nop
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x100056f0
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044a60
push 0x10044a40
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 9
push 1
push 0x10044a34
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005777
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044a60
push 0x10044310
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 8
push 1
push 0x10044a28
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov edi, edi
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005800
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x10044664
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 3
push 1
push 0x10044a24
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005887
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x10044a1c
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 6
push 1
push 0x10044a14
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov edi, edi
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005910
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x10044a08
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 0xa
push 1
push 0x100449fc
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005997
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x100449f0
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 0xb
push 1
push 0x100449e4
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov edi, edi
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005a20
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x100449d8
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 0xc
push 1
push 0x100449c8
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005aa7
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x100449bc
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 0xa
push 1
push 0x100449b0
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov edi, edi
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005b30
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x100449a4
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 0xb
push 1
push 0x10044998
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005bb7
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x1004461c
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 6
push 1
push 0x10044990
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov edi, edi
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005c40
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x10044984
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 0xc
push 1
push 0x10044974
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005cc7
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
mov edx, dword [0x10058484]
push edx
push 0xb
push 1
push 0x10044968
call fcn.100015a0
movsx eax, byte [0x10045881]
movsx ecx, byte [0x10045880]
movsx edx, byte [0x10045887]
push eax
movsx eax, byte [0x10045886]
push ecx
movsx ecx, byte [0x10045885]
push edx
movsx edx, byte [0x10045884]
push eax
movsx eax, byte [0x10045883]
push ecx
movsx ecx, byte [0x10045882]
push edx
push eax
push ecx
lea edx, [esp + 0x78]
push 0x1004494c
push edx
call fcn.10024ba4
lea eax, [esp + 0x80]
add esp, 0x64
lea ecx, [eax + 1]
jmp 0x10005d80
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005d80
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x200
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.10024c80
push 0x102e5840
push 0x100
lea edx, [esp + 0x50]
push edx
push 0x10044668
push 0x10044944
push 0x10044304
call fcn.10017460
mov eax, dword [0x10058484]
add esp, 0x44
push eax
push 8
push 1
push 0x10044938
call fcn.100015a0
lea eax, [esp + 0x2c]
add esp, 0x10
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10005e07
sub eax, ecx
mov ecx, dword [0x10058484]
push ecx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
push 0x102e5840
push 0xff
push 0x10044a58
push 0x10044304
call fcn.10017350
push 0x102e5840
push ebx
push 0x10044928
push 0x10044304
mov esi, eax
call fcn.10017350
add esp, 0x40
cmp esi, ebx
jne 0x10005f2c
cmp eax, 0x20830
jae 0x10005ea1
push 0x102e5840
push ebx
push 0x10044310
push 0x10044304
call fcn.10017350
push eax
push 2
call fcn.10002af0
add esp, 0x18
jmp 0x10005f2c
call fcn.10004ad0
mov esi, eax
cmp esi, ebx
mov dword [0x10058588], esi
je 0x10005f2c
push 0x200
lea ecx, [esp + 0x20]
push ebx
push ecx
call fcn.10024c80
xor esi, 0x99775533
push esi
lea edx, [esp + 0x2c]
push 0x10044920
push edx
call fcn.10024ba4
mov eax, dword [0x10058484]
push eax
push 9
push 1
push 0x10044914
call fcn.100015a0
lea eax, [esp + 0x44]
add esp, 0x28
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x10005ef6
mov ecx, dword [0x10058484]
push ecx
sub eax, edx
push eax
lea edx, [esp + 0x24]
push 1
push edx
call fcn.100015a0
mov eax, dword [0x10058484]
push eax
push 1
push 1
push 0x1004437c
call fcn.100015a0
add esp, 0x20
push 5
push 0x602f
push 0x607f
call fcn.10021b00
mov ecx, dword [0x10058484]
push ecx
call fcn.10025059
add esp, 0x10
mov ecx, dword [esp + 0xe1c]
pop esi
pop ebx
xor ecx, esp
xor eax, eax
call fcn.10024c3b
add esp, 0xe18
ret