Function at 0x502293
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b3d0d
mov eax, dword fs:[0]
push eax
sub esp, 0x2d4
mov eax, dword [0x616798]
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 dword [ebp - 0x2ac], ecx
mov esi, dword [ebp + 8]
push 0x14
mov byte [ebp - 0x298], 0x12
call fcn.00554883
add esp, 4
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x50203f
push 0x286
mov ecx, eax
call fcn.00447ff0
mov ebx, eax
mov dword [ebp - 0x2cc], eax
jmp 0x502047
xor ebx, ebx
mov dword [ebp - 0x2cc], ebx
push dword [ebp + 0xc]
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
push esi
call fcn.00448570
lea eax, [ebp - 0x2a5]
mov dword [ebx + 8], 0
xor edi, edi
mov dword [ebp - 0x2b4], 9
push eax
mov ecx, ebx
mov dword [ebp - 0x2d4], edi
call fcn.00448050
lea eax, [ebp - 0x2a5]
mov ecx, ebx
push eax
call fcn.00448050
mov al, byte [ebp - 0x2a5]
mov ecx, ebx
mov byte [ebp - 0x1c], al
lea eax, [ebp - 0x2a5]
push eax
call fcn.00448050
cmp byte [ebp - 0x1c], 0
mov al, byte [ebp - 0x2a5]
mov byte [ebp - 0x13], al
je 0x5020ce
cmp al, 1
mov dword [ebp - 0x2b4], 0xb
mov ecx, 2
cmove edi, ecx
mov dword [ebp - 0x2d4], edi
lea eax, [ebp - 0xa4]
mov dword [ebp - 0x2c0], edi
lea eax, [eax + edi*4]
mov dword [ebp - 0x2c4], eax
lea esi, [ebp - 0x297]
mov eax, edi
shl eax, 5
add eax, esi
mov dword [ebp - 0x2b0], eax
mov esi, eax
mov dword [ebp - 0x2b8], eax
mov eax, edi
mov edi, dword [ebp - 0x2c4]
lea ecx, [ebp - 0x137]
add eax, ecx
mov ecx, ebx
push eax
mov dword [ebp - 0x2d0], eax
call fcn.00448030
mov eax, dword [ebp - 0x2d0]
cmp byte [eax], 0xff
jne 0x50212f
mov byte [esi], 0
jmp 0x502299
mov edi, dword [ebp - 0x2cc]
xor ebx, ebx
nop word [eax + eax]
mov esi, dword [ebp - 0x2b8]
mov ecx, edi
add esi, ebx
push esi
call fcn.00448030
cmp byte [esi], 0
mov eax, 0x3e8
cmove ebx, eax
inc ebx
cmp ebx, eax
jl 0x502140
mov edi, dword [ebp - 0x2c4]
mov ebx, dword [ebp - 0x2cc]
mov ecx, ebx
lea esi, [edi - 0x30]
lea eax, [esi - 0x58]
push eax
call fcn.004480f0
push esi
mov ecx, ebx
call fcn.004480f0
lea eax, [esi - 0x2c]
mov ecx, ebx
push eax
call fcn.004480f0
mov ecx, dword [ebp - 0x2d0]
movsx eax, byte [ecx]
dec eax
cmp eax, 0xd
ja case.0x5021a7.4
movzx eax, byte [eax + 0x503168]
jmp dword [eax*4 + 0x503150]
lea eax, [ebp - 0x2c8]
mov ecx, ebx
push eax
call fcn.004480f0
movd xmm0, dword [ebp - 0x2c8]
cvtdq2ps xmm0, xmm0
movss dword [edi], xmm0
lea eax, [ebp - 0x2c8]
mov ecx, ebx
push eax
call fcn.004480f0
movd xmm0, dword [ebp - 0x2c8]
jmp 0x502281
lea eax, [ebp - 0x2bc]
mov ecx, ebx
push eax
call fcn.004480b0
movd xmm0, dword [ebp - 0x2bc]
cvtdq2ps xmm0, xmm0
movss dword [edi], xmm0
jmp 0x50226b
lea eax, [ebp - 0x2d8]
mov ecx, ebx
push eax
call fcn.00448110
mov eax, dword [ebp - 0x2d8]
mov ecx, ebx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bb220]
lea eax, [ebp - 0x2e0]
push eax
cvtpd2ps xmm0, xmm0
movss dword [edi], xmm0
call fcn.004481f0
mov edx, dword [ebp - 0x2dc]
mov ecx, dword [ebp - 0x2e0]
call fcn.00554c10
jmp 0x502287
push edi
mov ecx, ebx
call fcn.00448130
jmp 0x5021cb
push edi
mov ecx, ebx
call fcn.00448130
lea eax, [ebp - 0x2bc]
mov ecx, ebx
push eax
call fcn.004480b0
movd xmm0, dword [ebp - 0x2bc]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mov esi, dword [ebp - 0x2c0]
movsd qword [ebp + esi*8 - 0x78], xmm0
mov esi, dword [ebp - 0x2b8]
mov eax, dword [ebp - 0x2c0]
add esi, 0x20
inc eax
mov dword [ebp - 0x2b8], esi
add edi, 4
mov dword [ebp - 0x2c0], eax
mov dword [ebp - 0x2c4], edi
cmp eax, dword [ebp - 0x2b4]
jl 0x502106
lea eax, [ebp - 0xa8]
mov ecx, ebx
push eax
call fcn.004480f0
lea eax, [ebp - 0x1b]
mov ecx, ebx
push eax
call fcn.004481d0
lea eax, [ebp - 0x20]
mov ecx, ebx
push eax
call fcn.004480b0
mov ecx, ebx
call fcn.00448020
push 0x14
push ebx
call fcn.005548b3
add esp, 8
mov dword [ebp - 0x2a4], 0
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0
lea eax, [ebp - 0x2a4]
mov dword [ebp - 4], 1
push eax
push 0x400
mov ecx, eax
call fcn.0044c540
cmp byte [ebp - 0x1c], 0
mov edi, dword [ebp - 0x2d4]
je 0x502a2f
mov ebx, dword [ebp - 0x2ac]
mov eax, dword [ebp - 0x20]
mov dword [ebx + 0x23a4], eax
mov eax, dword [ebp - 0x1b]
mov dword [ebx + 0x23e0], eax
mov eax, dword [ebp - 0x17]
mov dword [ebx + 0x23e4], eax
mov eax, dword [ebx + 0x23bc]
cmp eax, 0xc8
jne 0x50241b
mov ecx, dword [ebx + 0x2c0]
push 0x22
add ecx, 0x140
call fcn.0044db90
push 0x5bba54
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, dword [ebx + 0x2c0]
push 0x23
add ecx, 0x140
call fcn.0044db90
push 0x5bba54
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, dword [ebx + 0x2c0]
push 0x1c
add ecx, 0x140
call fcn.0044db90
push dword [ebx + 0x23e4]
mov ecx, dword [ebp - 0x2a0]
mov esi, eax
push dword [ebx + 0x23e0]
mov edx, dword [ebp - 0x2a4]
sub ecx, edx
push str._lld
push ecx
push edx
call fcn.0043dcc0
mov eax, dword [esi]
add esp, 0x14
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov dword [esi + 0x170], 0xfffff0be
mov ecx, dword [ebx + 0x2c0]
mov eax, dword [ebx + 0x13c]
mov dword [ecx + 0x164], eax
jmp 0x50246a
cmp eax, 0xc9
jne 0x50242a
mov eax, dword [ebx + 0x144]
jmp 0x50243f
cmp eax, 0xca
jne 0x502439
mov eax, dword [ebx + 0x148]
jmp 0x50243f
mov eax, dword [ebx + 0x140]
mov ecx, dword [ebx + 0x2c0]
push 0x1c
mov dword [ecx + 0x164], eax
mov ecx, dword [ebx + 0x2c0]
add ecx, 0x140
call fcn.0044db90
push 0x5bba54
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x30]
imul eax, edi, 0x5c
add ebx, 0x350
add eax, ebx
mov ebx, dword [ebp - 0x2b0]
mov dword [ebp - 0x2c4], eax
lea eax, [edi + 0x22]
push eax
mov eax, dword [ebp - 0x2ac]
mov ecx, dword [eax + 0x2c0]
add ecx, 0x140
call fcn.0044db90
cmp byte [ebx], 0
mov esi, eax
mov ecx, dword [ebp - 0x2a4]
jne 0x5024ae
mov byte [ecx], 0
jmp 0x5024ed
mov eax, dword [ebp + edi*4 - 0xd4]
cmp eax, 1
jle 0x5024d5
push eax
mov eax, dword [ebp - 0x2a0]
push ebx
push str._s___ld_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x14
jmp 0x5024ed
mov eax, dword [ebp - 0x2a0]
push ebx
push 0x5bb3c4
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x10
mov eax, dword [esi]
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov dword [esi + 0x170], 0xffffffff
mov cl, byte [ebp + edi - 0x137]
test cl, cl
jne 0x502520
mov dword [esi + 0x170], 0xff96ff96
mov cl, byte [ebp + edi - 0x137]
cmp cl, 1
jne 0x502536
mov dword [esi + 0x170], 0xffff9696
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0xe
jne 0x50254c
mov dword [esi + 0x170], 0xff9696ff
mov cl, byte [ebp + edi - 0x137]
cmp cl, 2
jne 0x502562
mov dword [esi + 0x170], 0xffff96ff
mov cl, byte [ebp + edi - 0x137]
cmp cl, 9
jne 0x502578
mov dword [esi + 0x170], 0xffffeb96
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0xa
jne 0x50258e
mov dword [esi + 0x170], 0xffd27300
mov cl, byte [ebp + edi - 0x137]
cmp cl, 3
jne 0x5025a4
mov dword [esi + 0x170], 0xffffff96
mov cl, byte [ebp + edi - 0x137]
cmp cl, 4
jne 0x5025ba
mov dword [esi + 0x170], 0xff96ffff
mov cl, byte [ebp + edi - 0x137]
cmp cl, 8
jne 0x5025d0
mov dword [esi + 0x170], 0xffff73c8
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0xb
jne 0x5025e6
mov dword [esi + 0x170], 0xff64ff64
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0xc
jne 0x5025fc
mov dword [esi + 0x170], 0xff32ff64
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0xd
jne 0x502612
mov dword [esi + 0x170], 0xff00ff64
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0xf
jne 0x502628
mov dword [esi + 0x170], 0xff3264ff
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0x10
jne 0x50263e
mov dword [esi + 0x170], 0xff969637
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0x11
jne 0x502654
mov dword [esi + 0x170], 0xffff9637
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0x14
jne 0x50266a
mov dword [esi + 0x170], 0xffff9637
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0x12
jne 0x502680
mov dword [esi + 0x170], 0xffffb437
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0x13
jne 0x502696
mov dword [esi + 0x170], 0xffffb437
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0x15
jne 0x5026ac
mov dword [esi + 0x170], 0xffffc8c8
mov cl, byte [ebp + edi - 0x137]
mov edx, dword [ebp - 0x2c4]
movsx eax, cl
mov dword [edx - 8], eax
mov eax, dword [ebp + edi*4 - 0x12c]
mov dword [edx], eax
cmp cl, 1
jne 0x502755
cmp byte [ebx], 0
jne 0x5026da
mov eax, dword [ebp - 0x2a4]
mov byte [eax], 0
jmp 0x502741
mov eax, dword [ebp + edi*4 - 0xd4]
mov ecx, dword [ebp - 0x2a4]
cmp eax, 1
jle 0x502718
push eax
cvttsd2si eax, qword [ebp + edi*8 - 0x78]
push eax
cvttss2si eax, dword [ebp + edi*4 - 0xa4]
push eax
mov eax, dword [ebp - 0x2a0]
push ebx
push str._s___d__d___ld_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x1c
jmp 0x502741
cvttsd2si eax, qword [ebp + edi*8 - 0x78]
push eax
cvttss2si eax, dword [ebp + edi*4 - 0xa4]
push eax
mov eax, dword [ebp - 0x2a0]
push ebx
push str._s___d__d_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x18
mov eax, dword [esi]
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov cl, byte [ebp + edi - 0x137]
cmp cl, 6
jne 0x5027b3
cmp byte [ebx], 0
jne 0x50276a
mov eax, dword [ebp - 0x2a4]
mov byte [eax], 0
jmp 0x50279f
movsd xmm0, qword [ebp + edi*8 - 0x78]
call fcn.00554af0
mov ecx, dword [ebp - 0x2a4]
push edx
push eax
cvttss2si eax, dword [ebp + edi*4 - 0xa4]
push eax
mov eax, dword [ebp - 0x2a0]
push ebx
push str._s__d___llu_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x1c
mov eax, dword [esi]
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov cl, byte [ebp + edi - 0x137]
cmp cl, 3
jne 0x502801
cmp byte [ebx], 0
jne 0x5027c8
mov eax, dword [ebp - 0x2a4]
mov byte [eax], 0
jmp 0x5027ed
push dword [ebp + edi*4 - 0xd4]
mov eax, dword [ebp - 0x2a0]
mov ecx, dword [ebp - 0x2a4]
sub eax, ecx
push ebx
push str._s___d_
push eax
push ecx
call fcn.0043dcc0
add esp, 0x14
mov eax, dword [esi]
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov cl, byte [ebp + edi - 0x137]
cmp cl, 2
jne 0x502910
cmp byte [ebx], 0
jne 0x50281d
mov eax, dword [ebp - 0x2a4]
mov byte [eax], 0
jmp 0x5028fc
movsd xmm0, qword [ebp + edi*8 - 0x78]
divsd xmm0, qword [0x5cd108]
mov ecx, dword [ebp - 0x2a4]
movss xmm1, dword [0x5bc028]
mulsd xmm0, qword [0x5cd120]
cvtpd2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x50286b
mulss xmm0, dword [0x5bc05c]
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp + edi*4 - 0xa4]
neg eax
push eax
push ebx
push str._s___d__dm_
jmp 0x502882
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp + edi*4 - 0xa4]
neg eax
push eax
push ebx
push str._s___d__dh_
mov eax, dword [ebp - 0x2a0]
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x18
cmp dword [ebp + edi*4 - 0xd4], 1
jle 0x5028fc
mov edx, dword [ebp - 0x2a4]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x2b0], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5028b0
sub ecx, dword [ebp - 0x2b0]
lea eax, [edx + 1]
mov dword [ebp - 0x2b0], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x5028c6
push dword [ebp + edi*4 - 0xd4]
mov eax, dword [ebp - 0x2a0]
sub edx, dword [ebp - 0x2b0]
sub eax, ecx
mov ecx, dword [ebp - 0x2a4]
sub eax, ecx
push 0x5ca3e0
push eax
lea eax, [edx + ecx]
push eax
call fcn.0043dcc0
add esp, 0x10
mov eax, dword [esi]
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov cl, byte [ebp + edi - 0x137]
cmp cl, 0xe
jne 0x502a13
cmp byte [ebx], 0
jne 0x50292c
mov eax, dword [ebp - 0x2a4]
mov byte [eax], 0
jmp 0x502a06
movsd xmm0, qword [ebp + edi*8 - 0x78]
movsd xmm1, qword [0x5cd128]
mov ecx, dword [ebp - 0x2a4]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x502970
cvttss2si eax, dword [ebp + edi*4 - 0xa4]
neg eax
push eax
mov eax, dword [ebp - 0x2a0]
push ebx
push str._s___d_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x14
jmp 0x502999
cvttsd2si eax, xmm0
push eax
cvttss2si eax, dword [ebp + edi*4 - 0xa4]
neg eax
push eax
mov eax, dword [ebp - 0x2a0]
push ebx
push str._s___d__dc_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x18
cmp dword [ebp + edi*4 - 0xd4], 1
jle 0x502a06
mov edx, dword [ebp - 0x2a4]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x2b0], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5029b4
sub ecx, dword [ebp - 0x2b0]
lea eax, [edx + 1]
mov dword [ebp - 0x2b0], eax
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x5029d0
push dword [ebp + edi*4 - 0xd4]
mov eax, dword [ebp - 0x2a0]
sub edx, dword [ebp - 0x2b0]
sub eax, ecx
mov ecx, dword [ebp - 0x2a4]
sub eax, ecx
push 0x5ca3e0
push eax
lea eax, [edx + ecx]
push eax
call fcn.0043dcc0
add esp, 0x10
mov eax, dword [esi]
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
add dword [ebp - 0x2c4], 0x5c
inc edi
add ebx, 0x20
cmp edi, dword [ebp - 0x2b4]
jl 0x502481
jmp 0x5030f6
mov al, byte [ebp - 0x13]
cmp al, 6
je 0x502d3a
cmp al, 7
je 0x502d3a
cmp al, 0xb
je 0x502d3a
test al, al
je 0x502d3a
cmp al, 0xc
jne 0x502b07
mov edi, dword [ebp - 0x2ac]
mov ecx, edi
push 1
call fcn.00503d90
mov ecx, dword [edi + 0x2b8]
push 0x3c
add ecx, 0x140
call fcn.0044db90
test eax, eax
jne 0x502aa2
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2dc]
add ecx, 0x140
call fcn.0044daf0
mov ecx, dword [edi + 0x2b8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov ecx, dword [edi + 0x2dc]
mov eax, dword [ebp - 0xa8]
add ecx, 0x140
push 0x3d
mov dword [edi + 0x23d4], eax
call fcn.0044db90
push dword [ebp - 0x17]
mov ecx, dword [ebp - 0x2a0]
mov esi, eax
push dword [ebp - 0x1b]
mov edx, dword [ebp - 0x2a4]
sub ecx, edx
push str.Bank:__lld
push ecx
push edx
call fcn.0043dcc0
mov eax, dword [esi]
add esp, 0x14
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov eax, dword [ebp - 0x20]
mov dword [edi + 0x23a8], eax
mov eax, dword [edi + 0x2dc]
jmp 0x502dff
cmp al, 8
jne 0x502c29
mov edi, dword [ebp - 0x2ac]
push 0x2e
mov ecx, dword [edi + 0x2b8]
add ecx, 0x140
call fcn.0044db90
test eax, eax
je 0x502b43
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d0]
add ecx, 0x140
call fcn.0044dea0
mov ecx, dword [edi + 0x2b8]
push 0x3c
add ecx, 0x140
call fcn.0044db90
test eax, eax
je 0x502b71
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2dc]
add ecx, 0x140
call fcn.0044dea0
mov ecx, dword [edi + 0x2b8]
push 0x4c
add ecx, 0x140
call fcn.0044db90
test eax, eax
jne 0x502baa
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d8]
add ecx, 0x140
call fcn.0044daf0
mov ecx, dword [edi + 0x2b8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov eax, dword [ebp - 0x20]
mov dword [edi + 0x23b8], eax
mov eax, dword [edi + 0x2d8]
push 0x4d
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0x2ac], 0x50
lea ecx, [eax + 0x140]
call fcn.0044db90
push dword [ebp - 0x17]
mov edx, dword [ebp - 0x2a4]
lea ecx, [edi + 0x2418]
push dword [ebp - 0x1b]
mov esi, eax
push ecx
mov ecx, dword [ebp - 0x2a0]
push str._s:__lld
sub ecx, edx
push ecx
push edx
call fcn.0043dcc0
mov eax, dword [esi]
add esp, 0x18
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov eax, dword [ebp - 0x2b4]
mov ecx, 0x1d30
mov dword [esi + 0x170], 0xfffff0be
jmp 0x502e0e
cmp al, 9
jne 0x5030f6
mov edi, dword [ebp - 0x2ac]
push 0x2e
mov ecx, dword [edi + 0x2b8]
add ecx, 0x140
call fcn.0044db90
test eax, eax
je 0x502c65
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d0]
add ecx, 0x140
call fcn.0044dea0
mov ecx, dword [edi + 0x2b8]
push 0x3c
add ecx, 0x140
call fcn.0044db90
test eax, eax
je 0x502c93
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2dc]
add ecx, 0x140
call fcn.0044dea0
mov ecx, dword [edi + 0x2b8]
push 0x3e
add ecx, 0x140
call fcn.0044db90
test eax, eax
jne 0x502ccc
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d4]
add ecx, 0x140
call fcn.0044daf0
mov ecx, dword [edi + 0x2b8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov eax, dword [ebp - 0x20]
mov dword [edi + 0x23b4], eax
mov eax, dword [edi + 0x2d4]
push 0x3f
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0x2ac], 0x42
lea ecx, [eax + 0x140]
call fcn.0044db90
push dword [ebp - 0x17]
mov ecx, dword [ebp - 0x2a0]
mov esi, eax
push dword [ebp - 0x1b]
mov edx, dword [ebp - 0x2a4]
sub ecx, edx
push str.You:__lld
push ecx
push edx
call fcn.0043dcc0
mov eax, dword [esi]
add esp, 0x14
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov eax, dword [ebp - 0x2b4]
mov ecx, 0x16b8
jmp 0x502e0e
mov edi, dword [ebp - 0x2ac]
mov ecx, edi
push 1
call fcn.00503d90
mov ecx, dword [edi + 0x2b8]
push 0x2e
add ecx, 0x140
call fcn.0044db90
test eax, eax
jne 0x502d82
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d0]
add ecx, 0x140
call fcn.0044daf0
mov ecx, dword [edi + 0x2b8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov ecx, dword [edi + 0x2d0]
mov eax, dword [ebp - 0xa8]
add ecx, 0x140
push 0x2f
mov dword [edi + 0x23d4], eax
call fcn.0044db90
mov esi, eax
movsx eax, byte [ebp - 0x13]
cmp eax, 0xc
ja case.0x502db3.1
movzx ecx, byte [eax + 0x503190]
jmp dword [ecx*4 + 0x503178]
mov edx, dword [esi]
mov ecx, esi
push str.Trader
call dword [edx + 0x30]
jmp 0x502df0
push str.Trainer
jmp 0x502de9
push str.Tower_Chest
jmp 0x502de9
push str.Ground
jmp 0x502de9
push str.Account_Storage
jmp 0x502de9
push 0x5bba54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x30]
mov eax, dword [ebp - 0x20]
mov dword [edi + 0x23a8], eax
mov eax, dword [edi + 0x2d0]
mov ecx, 0x9c8
mov dword [ebp - 0x2ac], 0x32
lea edx, [eax + 0x140]
xor ebx, ebx
lea eax, [ebp - 0x297]
mov dword [ebp - 0x2b0], edx
mov dword [ebp - 0x2bc], eax
lea eax, [edi + ecx]
mov dword [ebp - 0x2b4], eax
lea ecx, [ebp - 0x137]
mov eax, dword [ebp - 0x2ac]
sub eax, ecx
mov dword [ebp - 0x2ac], eax
lea edi, [ebp - 0x137]
mov ecx, edx
add edi, ebx
add eax, edi
push eax
call fcn.0044db90
mov esi, eax
mov eax, dword [ebp - 0x2bc]
cmp byte [eax], 0
jne 0x502e6f
mov ecx, dword [ebp - 0x2a4]
mov byte [ecx], 0
jmp 0x502ec8
mov ecx, dword [ebp + ebx*4 - 0xd4]
cmp ecx, 1
jle 0x502ea3
push ecx
push dword [ebp + ebx*4 - 0x100]
mov ecx, dword [ebp - 0x2a4]
push eax
mov eax, dword [ebp - 0x2a0]
push str._s__ldg___ld_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x18
jmp 0x502ec8
push dword [ebp + ebx*4 - 0x100]
mov ecx, dword [ebp - 0x2a4]
push eax
mov eax, dword [ebp - 0x2a0]
push str._s__ldg
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x14
mov eax, dword [esi]
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov dword [esi + 0x170], 0xffffffff
mov cl, byte [edi]
test cl, cl
jne 0x502ef1
mov dword [esi + 0x170], 0xff96ff96
mov cl, byte [edi]
cmp cl, 1
jne 0x502f02
mov dword [esi + 0x170], 0xffff9696
mov cl, byte [edi]
cmp cl, 0xe
jne 0x502f13
mov dword [esi + 0x170], 0xff9696ff
mov cl, byte [edi]
cmp cl, 2
jne 0x502f24
mov dword [esi + 0x170], 0xffff96ff
mov cl, byte [edi]
cmp cl, 9
jne 0x502f35
mov dword [esi + 0x170], 0xffffeb96
mov cl, byte [edi]
cmp cl, 0xa
jne 0x502f46
mov dword [esi + 0x170], 0xffd27300
mov cl, byte [edi]
cmp cl, 3
jne 0x502f57
mov dword [esi + 0x170], 0xffffff96
mov cl, byte [edi]
cmp cl, 4
jne 0x502f68
mov dword [esi + 0x170], 0xff96ffff
mov cl, byte [edi]
cmp cl, 8
jne 0x502f79
mov dword [esi + 0x170], 0xffff73c8
mov cl, byte [edi]
cmp cl, 0xb
jne 0x502f8a
mov dword [esi + 0x170], 0xff64ff64
mov cl, byte [edi]
cmp cl, 0xc
jne 0x502f9b
mov dword [esi + 0x170], 0xff32ff64
mov cl, byte [edi]
cmp cl, 0xd
jne 0x502fac
mov dword [esi + 0x170], 0xff00ff64
mov cl, byte [edi]
cmp cl, 0xf
jne 0x502fbd
mov dword [esi + 0x170], 0xff3264ff
mov cl, byte [edi]
cmp cl, 0x10
jne 0x502fce
mov dword [esi + 0x170], 0xff969637
mov cl, byte [edi]
cmp cl, 0x11
jne 0x502fdf
mov dword [esi + 0x170], 0xffff9637
mov cl, byte [edi]
cmp cl, 0x14
jne 0x502ff0
mov dword [esi + 0x170], 0xffff9637
mov cl, byte [edi]
cmp cl, 0x12
jne 0x503001
mov dword [esi + 0x170], 0xffffb437
mov cl, byte [edi]
cmp cl, 0x13
jne 0x503012
mov dword [esi + 0x170], 0xffffb437
mov cl, byte [edi]
mov edx, dword [ebp - 0x2b4]
mov edi, dword [ebp - 0x2bc]
movsx eax, cl
mov dword [edx - 8], eax
mov eax, dword [ebp + ebx*4 - 0x12c]
mov dword [edx], eax
cmp cl, 1
jne 0x5030ce
cmp byte [edi], 0
jne 0x503046
mov eax, dword [ebp - 0x2a4]
mov byte [eax], 0
jmp 0x5030bb
mov eax, dword [ebp + ebx*4 - 0xd4]
mov ecx, dword [ebp - 0x2a4]
cmp eax, 1
jle 0x50308b
push eax
cvttsd2si eax, qword [ebp + ebx*8 - 0x78]
push eax
cvttss2si eax, dword [ebp + ebx*4 - 0xa4]
push eax
push dword [ebp + ebx*4 - 0x100]
mov eax, dword [ebp - 0x2a0]
push edi
push str._s__ldg___d__d___ld_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x20
jmp 0x5030bb
cvttsd2si eax, qword [ebp + ebx*8 - 0x78]
push eax
cvttss2si eax, dword [ebp + ebx*4 - 0xa4]
push eax
push dword [ebp + ebx*4 - 0x100]
mov eax, dword [ebp - 0x2a0]
push edi
push str._s__ldg___d__d_
sub eax, ecx
push eax
push ecx
call fcn.0043dcc0
add esp, 0x1c
mov eax, dword [esi]
mov ecx, esi
push dword [ebp - 0x2a4]
call dword [eax + 0x30]
mov edx, dword [ebp - 0x2b4]
mov eax, dword [ebp - 0x2ac]
add edx, 0x5c
inc ebx
mov dword [ebp - 0x2b4], edx
mov edx, dword [ebp - 0x2b0]
add edi, 0x20
mov dword [ebp - 0x2bc], edi
cmp ebx, 9
jl 0x502e45
mov ecx, dword [ebp - 0x2a4]
test ecx, ecx
je 0x50312c
mov edx, dword [ebp - 0x29c]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x503122
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50314a
push edx
push ecx
call fcn.005548b3
add esp, 8
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.005548c1
mov esp, ebp
pop ebp
ret 8
call fcn.00580f37
nop
scasb al, byte es:[edi]
and dword [eax], edx
push esi
and dl, byte [eax]
out 0x21, al
push eax
add byte [0x63005022], al
and dl, byte [eax]
xchg ebx, eax
and dl, byte [eax]
add byte [ecx], al
add al, byte [84214533]
add eax, 84215045
add al, 102
nop
salc
sub eax, 767164496
push eax
add al, cl
sub eax, 0x2dcf0050
push eax
add ch, bl
sub eax, 0x2de40050
push eax
add byte [eax], al
add eax, 0x5050505
add dword [edx], eax
add eax, 67306757
int3