Function at 0x1000a230
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10041ca8
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x1005b034]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
sub esp, 0x1c
mov esi, esp
xor ebx, ebx
mov dword [ebp - 0x58], eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
lea edi, [ebx + 4]
mov eax, str.Pant
mov dword [ebp - 0x54], esp
mov byte [esi], bl
call fcn.10002d20
sub esp, 0x1c
mov dword [ebp - 4], ebx
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
lea edi, [ebx + 3]
mov eax, 0x1004e03c
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 1
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a2bf
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x50], esp
mov byte [esi], bl
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a2d8
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 2
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a327
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 4
mov eax, str.Helm
mov dword [ebp - 0x50], esp
mov byte [esi], bl
call fcn.10002d20
sub esp, 0x1c
mov esi, esp
mov edi, 3
mov dword [ebp - 4], edi
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov eax, 0x1004e048
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 4
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a387
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x54], esp
mov byte [esi], bl
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a3a0
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 5
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a3ef
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 5
mov eax, str.Armor
mov dword [ebp - 0x50], esp
mov byte [esi], bl
call fcn.10002d20
sub esp, 0x1c
mov dword [ebp - 4], 6
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 3
mov eax, 0x1004e054
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 7
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a453
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x54], esp
mov byte [esi], bl
lea edi, [ecx + 1]
lea esp, [esp]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a470
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 8
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a4bf
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 5
mov eax, str.Glove
mov dword [ebp - 0x50], esp
mov byte [esi], bl
call fcn.10002d20
sub esp, 0x1c
mov dword [ebp - 4], 9
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 3
mov eax, 0x1004e060
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 0xa
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a523
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x54], esp
mov byte [esi], bl
lea edi, [ecx + 1]
lea esp, [esp]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a540
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 0xb
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a58f
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 4
mov eax, str.Boot
mov dword [ebp - 0x50], esp
mov byte [esi], bl
call fcn.10002d20
sub esp, 0x1c
mov dword [ebp - 4], 0xc
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 3
mov eax, 0x1004e06c
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 0xd
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a5f3
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x54], esp
mov byte [esi], bl
lea edi, [ecx + 1]
lea esp, [esp]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a610
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 0xe
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a65f
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 6
mov eax, str.Shield
mov dword [ebp - 0x50], esp
mov byte [esi], bl
call fcn.10002d20
mov eax, 0xf
mov dword [ebp - 4], eax
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], eax
lea edi, [eax - 0xc]
mov dword [esi + 0x10], ebx
mov eax, 0x1004e078
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 0x10
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a6be
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x54], esp
mov byte [esi], bl
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a6d7
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 0x11
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a726
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 5
mov eax, str.Sword
mov dword [ebp - 0x50], esp
mov byte [esi], bl
call fcn.10002d20
sub esp, 0x1c
mov dword [ebp - 4], 0x12
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 3
mov eax, 0x1004e084
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 0x13
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a78a
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x54], esp
mov byte [esi], bl
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a7a3
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 0x14
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a7f2
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 4
mov eax, str.Wing
mov dword [ebp - 0x50], esp
mov byte [esi], bl
call fcn.10002d20
sub esp, 0x1c
mov dword [ebp - 4], 0x15
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 3
mov eax, 0x1004e090
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 0x16
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a856
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x54], esp
mov byte [esi], bl
lea edi, [ecx + 1]
nop
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a870
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 0x17
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a8bf
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 0xa
mov eax, str.player.bmd
mov dword [ebp - 0x50], esp
mov byte [esi], bl
call fcn.10002d20
sub esp, 0x1c
mov dword [ebp - 4], 0x18
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 4
mov eax, 0x1004e0a0
mov dword [ebp - 0x4c], esp
mov byte [esi], bl
call fcn.10002d20
mov byte [ebp - 4], 0x19
cmp dword [0x10168a78], 0x10
mov eax, dword [0x10168a64]
jae 0x1000a923
mov eax, 0x10168a64
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x54], esp
mov byte [esi], bl
lea edi, [ecx + 1]
lea esp, [esp]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000a940
sub ecx, edi
mov edi, ecx
call fcn.10002d20
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.10009bc0
add esp, 0x54
mov edi, eax
mov esi, 0x10168a64
mov dword [ebp - 4], 0x1a
call fcn.10003280
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], 0x10
jb 0x1000a98f
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov edi, 4
mov eax, str._xor
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.10002d20
mov dword [ebp - 4], 0x1b
cmp dword [ebp - 0x18], 0x10
mov eax, dword [ebp - 0x2c]
jae 0x1000a9c0
mov eax, esi
mov ecx, dword [ebp - 0x1c]
push ecx
push eax
push 0x10168a64
call fcn.10007540
mov ecx, eax
cmp ecx, 0xffffffff
je 0x1000a9e3
mov eax, dword [ebp - 0x1c]
mov esi, 0x10168a64
call fcn.10002ea0
mov edi, 0x10
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x18], edi
jb 0x1000aa01
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov eax, dword [0x10168a64]
cmp dword [0x10168a78], edi
jae 0x1000aa13
mov eax, 0x10168a64
push ebx
push 0x102
push 2
push ebx
push 7
push 0x40000000
push eax
mov dword [0x101742c0], eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
je 0x1000aa61
push ebx
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
sub ecx, 8
push ecx
add edx, 8
push edx
push esi
mov dword [ebp - 0x5c], ebx
call dword [sym.imp.KERNEL32.dll_WriteFile]
push esi
test eax, eax
jne 0x1000aa65
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
jmp 0x1000aacb
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10168a64]
cmp dword [0x10168a78], edi
jae 0x1000aa7d
mov eax, 0x10168a64
mov ecx, eax
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x48], bl
lea esi, [ecx + 1]
nop
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1000aa90
sub ecx, esi
mov edi, ecx
lea esi, [ebp - 0x48]
call fcn.10002d20
mov ecx, esi
mov ebx, 0x10176744
mov dword [ebp - 4], 0x1c
call fcn.1000aaf0
cmp dword [ebp - 0x34], 0x10
jb 0x1000aac9
mov eax, dword [ebp - 0x48]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1003e6b0
mov esp, ebp
pop ebp
ret 4