Function at 0x1039d600
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x104249d3
mov eax, dword fs:[0]
push eax
sub esp, 0x550
mov eax, dword [0x104c5878]
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 esi, ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0
mov dword [ebp - 4], 1
mov eax, dword [ebp + 8]
cmp eax, 0x1b
ja case.0x1039d68f.13
jmp dword [eax*4 + 0x1039ea10]
mov dword [ebp - 0x230], str.ePR_Success
mov dword [ebp - 0x22c], 0xc
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x228]
push 0xc
call fcn.10353240
test al, al
je 0x1039d6ec
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d6cc
dec eax
jmp 0x1039d6ce
xor eax, eax
push eax
push str.ePR_Success
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0xb], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_NeededItunesDllFunctionsNotFound
mov dword [ebp - 0x22c], 0x25
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x228]
push 0x25
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d72d
dec eax
jmp 0x1039d72f
xor eax, eax
push eax
push str.ePR_NeededItunesDllFunctionsNotFound
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x24], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_CannotConnectToServer
mov dword [ebp - 0x22c], 0x1a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x228]
push 0x1a
call fcn.10353240
test al, al
je 0x1039d7ae
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d78e
dec eax
jmp 0x1039d790
xor eax, eax
push eax
push str.ePR_CannotConnectToServer
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x19], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_ServerReturnNonPlist
mov dword [ebp - 0x22c], 0x19
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x228]
push 0x19
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d7f3
dec eax
jmp 0x1039d7f5
xor eax, eax
push eax
push str.ePR_ServerReturnNonPlist
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x18], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_ServerPlistNoSongList
mov dword [ebp - 0x22c], 0x1a
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x228]
push 0x1a
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d84f
dec eax
jmp 0x1039d851
xor eax, eax
push eax
push str.ePR_ServerPlistNoSongList
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x19], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_ServerPlistSongListEmpty
mov dword [ebp - 0x22c], 0x1d
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x228]
push 0x1d
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d8ab
dec eax
jmp 0x1039d8ad
xor eax, eax
push eax
push str.ePR_ServerPlistSongListEmpty
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x1c], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_ServerPlistNoUrl
mov dword [ebp - 0x22c], 0x15
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x228]
push 0x15
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d907
dec eax
jmp 0x1039d909
xor eax, eax
push eax
push str.ePR_ServerPlistNoUrl
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x14], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_ServerPlistNoDownloadKey
mov dword [ebp - 0x22c], 0x1d
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x228]
push 0x1d
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d963
dec eax
jmp 0x1039d965
xor eax, eax
push eax
push str.ePR_ServerPlistNoDownloadKey
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x1c], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_ServerPlistNoSinf
mov dword [ebp - 0x22c], 0x16
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x228]
push 0x16
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039d9bf
dec eax
jmp 0x1039d9c1
xor eax, eax
push eax
push str.ePR_ServerPlistNoSinf
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x15], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_ServerPlistNoBundleVersion
mov dword [ebp - 0x22c], 0x1f
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x228]
push 0x1f
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039da1b
dec eax
jmp 0x1039da1d
xor eax, eax
push eax
push str.ePR_ServerPlistNoBundleVersion
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x1e], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_ServerPlistNoBundleDisplayName
mov dword [ebp - 0x22c], 0x23
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x228]
push 0x23
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039da77
dec eax
jmp 0x1039da79
xor eax, eax
push eax
push str.ePR_ServerPlistNoBundleDisplayName
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x22], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_FailureTypeNone_ItemNotFree
mov dword [ebp - 0x22c], 0x20
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x228]
push 0x20
call fcn.10353240
test al, al
je 0x1039daef
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039dacf
dec eax
jmp 0x1039dad1
xor eax, eax
push eax
push str.ePR_FailureTypeNone_ItemNotFree
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x1f], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_FailureTypeNone_ItemNotAvailable
mov dword [ebp - 0x22c], 0x25
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x228]
push 0x25
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039db3d
dec eax
push eax
push str.ePR_FailureTypeNone_ItemNotAvailable
jmp 0x1039d735
xor eax, eax
push eax
push str.ePR_FailureTypeNone_ItemNotAvailable
jmp 0x1039d735
mov dword [ebp - 0x230], str.ePR_FailureTypeNone_UnknownCase
mov dword [ebp - 0x22c], 0x20
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x228]
push 0x20
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039db84
dec eax
jmp 0x1039db86
xor eax, eax
push eax
push str.ePR_FailureTypeNone_UnknownCase
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x1f], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_FailureType2004_AppleIDDisabled
mov dword [ebp - 0x22c], 0x24
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x228]
push 0x24
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039dbe0
dec eax
jmp 0x1039dbe2
xor eax, eax
push eax
push str.ePR_FailureType2004_AppleIDDisabled
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x23], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_FailureType5002_UnknownError_PossiblyInvalidItemID
mov dword [ebp - 0x22c], 0x37
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x228]
push 0x37
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039dc45
dec eax
jmp 0x1039dc47
xor eax, eax
push eax
push str.ePR_FailureType5002_UnknownError_PossiblyInvalidItemID
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x36], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_FailureType5105_KbsyncError
mov dword [ebp - 0x22c], 0x20
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x228]
push 0x20
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039dca1
dec eax
jmp 0x1039dca3
xor eax, eax
push eax
push str.ePR_FailureType5105_KbsyncError
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x1f], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_UnknownFailureType
mov dword [ebp - 0x22c], 0x17
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x228]
push 0x17
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039dd06
dec eax
jmp 0x1039dd08
xor eax, eax
push eax
push str.ePR_UnknownFailureType
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 0x16], 0
jmp 0x1039e0f0
mov dword [ebp - 0x230], str.ePR_FailureType1008_CannotVerifyDeviceOrComputer
mov dword [ebp - 0x22c], 0x31
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x228]
push 0x31
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039dd62
dec eax
jmp 0x1039dd64
xor eax, eax
push eax
push str.ePR_FailureType1008_CannotVerifyDeviceOrComputer
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x30], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_FailureType2042_SignInNeeded
mov dword [ebp - 0x22c], 0x21
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x228]
push 0x21
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039ddc7
dec eax
jmp 0x1039ddc9
xor eax, eax
push eax
push str.ePR_FailureType2042_SignInNeeded
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x20], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_FailureType2019_PriceMismatch
mov dword [ebp - 0x22c], 0x22
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x228]
push 0x22
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039de2c
dec eax
jmp 0x1039de2e
xor eax, eax
push eax
push str.ePR_FailureType2019_PriceMismatch
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x21], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_FailureTypeNone_ClientVersionTooLowForUnionPay
mov dword [ebp - 0x22c], 0x33
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x228]
push 0x33
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039de91
dec eax
jmp 0x1039de93
xor eax, eax
push eax
push str.ePR_FailureTypeNone_ClientVersionTooLowForUnionPay
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x32], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_UnacceptableCountry
mov dword [ebp - 0x22c], 0x18
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x228]
push 0x18
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039def6
dec eax
jmp 0x1039def8
xor eax, eax
push eax
push str.ePR_UnacceptableCountry
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x17], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_FailureType2041_PriceChanged
mov dword [ebp - 0x22c], 0x21
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x228]
push 0x21
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039df64
dec eax
push eax
push str.ePR_FailureType2041_PriceChanged
jmp 0x1039ddcf
xor eax, eax
push eax
push str.ePR_FailureType2041_PriceChanged
jmp 0x1039ddcf
mov dword [ebp - 0x230], str.ePR_FailureType2024_NeedToApproveBillingInfo
mov dword [ebp - 0x22c], 0x2d
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x228]
push 0x2d
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039dfab
dec eax
jmp 0x1039dfad
xor eax, eax
push eax
push str.ePR_FailureType2024_NeedToApproveBillingInfo
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x2c], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_FailureType2021_2022_BillingProblemWithPreviousPurchase
mov dword [ebp - 0x22c], 0x3c
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x228]
push 0x3c
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039e010
dec eax
jmp 0x1039e012
xor eax, eax
push eax
push str.ePR_FailureType2021_2022_BillingProblemWithPreviousPurchase
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x3b], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.ePR_NeedAcceptITunesStoreTerm
mov dword [ebp - 0x22c], 0x1e
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x228]
push 0x1e
call fcn.10353240
test al, al
je 0x1039d74d
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039e075
dec eax
jmp 0x1039e077
xor eax, eax
push eax
push str.ePR_NeedAcceptITunesStoreTerm
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
add esp, 0xc
mov byte [eax + 0x1d], 0
mov byte [ebp - 4], 1
xor bl, bl
jmp 0x1039e0f9
mov dword [ebp - 0x230], str.Unknown
mov dword [ebp - 0x22c], 8
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x228]
push 8
call fcn.10353240
test al, al
je 0x1039e0f3
mov eax, dword [ebp - 0x224]
test eax, eax
je 0x1039e0d3
dec eax
jmp 0x1039e0d5
xor eax, eax
push eax
push str.Unknown
push dword [ebp - 0x228]
call fcn.103ce0b0
mov eax, dword [ebp - 0x228]
mov byte [eax + 7], 0
add esp, 0xc
mov byte [ebp - 4], 1
mov bl, 1
mov byte [ebp - 4], 0x1e
mov eax, dword [esi + 0x108]
mov dword [ebp - 0x2ec], eax
mov eax, dword [esi + 0x10c]
mov dword [ebp - 0x2f4], 0
mov dword [ebp - 0x2f0], 0xffffffff
mov dword [ebp - 0x2e8], eax
mov byte [ebp - 4], 0x1f
mov eax, 0x150
test bl, bl
mov ecx, 0x15c
cmove ecx, eax
mov eax, dword [ecx + esi]
mov dword [ebp - 0x2e4], eax
mov eax, dword [ecx + esi + 4]
mov dword [ebp - 0x2e0], eax
mov byte [ebp - 4], 0x1e
mov dword [ebp - 0x234], 1
mov byte [ebp - 4], 0x22
lea eax, [ebp - 0x314]
mov dword [ebp - 0x22c], eax
lea ecx, [ebp - 0x314]
lea eax, [ebp - 0x2f4]
mov dword [ebp - 0x31c], 0
push eax
mov dword [ebp - 0x318], 0xffffffff
call fcn.10355560
mov byte [ebp - 4], 0x24
mov dword [ebp - 0x2fc], 0x10479970
mov dword [ebp - 0x2f8], 2
mov byte [ebp - 4], 0x22
mov dword [ebp - 0x234], 3
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x34c]
mov dword [ebp - 0x22c], eax
lea ecx, [ebp - 0x34c]
lea eax, [ebp - 0x31c]
mov dword [ebp - 0x354], 0
push eax
mov dword [ebp - 0x350], 0xffffffff
call fcn.10355590
mov byte [ebp - 4], 0x29
mov dword [ebp - 0x324], str.hash
mov dword [ebp - 0x320], 6
mov byte [ebp - 4], 0x27
mov dword [ebp - 0x234], 7
mov byte [ebp - 4], 0x2c
lea eax, [ebp - 0x3ec]
mov dword [ebp - 0x22c], eax
lea ecx, [ebp - 0x3ec]
lea eax, [ebp - 0x354]
mov dword [ebp - 0x3f4], 0
push eax
mov dword [ebp - 0x3f0], 0xffffffff
call fcn.10355620
mov byte [ebp - 4], 0x2e
mov eax, dword [esi + 0x168]
mov dword [ebp - 0x3b4], eax
mov eax, dword [esi + 0x16c]
mov dword [ebp - 0x3b0], eax
mov byte [ebp - 4], 0x2c
mov dword [ebp - 0x234], 0xf
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x3a4]
mov dword [ebp - 0x22c], eax
lea ecx, [ebp - 0x3a4]
lea eax, [ebp - 0x3f4]
mov dword [ebp - 0x3ac], 0
push eax
mov dword [ebp - 0x3a8], 0xffffffff
call fcn.103556e0
mov byte [ebp - 4], 0x33
mov dword [ebp - 0x35c], 0x10479950
mov dword [ebp - 0x358], 2
mov byte [ebp - 4], 0x31
mov dword [ebp - 0x234], 0x1f
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x4cc]
mov dword [ebp - 0x22c], eax
lea ecx, [ebp - 0x4cc]
lea eax, [ebp - 0x3ac]
mov dword [ebp - 0x4d4], 0
push eax
mov dword [ebp - 0x4d0], 0xffffffff
call fcn.103557c0
mov byte [ebp - 4], 0x38
mov dword [ebp - 0x474], str.actpurchase
mov dword [ebp - 0x470], 0xd
mov byte [ebp - 4], 0x36
mov dword [ebp - 0x234], 0x3f
mov byte [ebp - 4], 0x3b
lea eax, [ebp - 0x464]
mov dword [ebp - 0x22c], eax
lea ecx, [ebp - 0x464]
lea eax, [ebp - 0x4d4]
mov dword [ebp - 0x46c], 0
push eax
mov dword [ebp - 0x468], 0xffffffff
call fcn.103558c0
mov byte [ebp - 4], 0x3d
mov dword [ebp - 0x3fc], 0x10479950
mov dword [ebp - 0x3f8], 2
mov byte [ebp - 4], 0x3b
mov dword [ebp - 0x234], 0x7f
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x554]
mov dword [ebp - 0x22c], eax
lea ecx, [ebp - 0x554]
lea eax, [ebp - 0x46c]
mov dword [ebp - 0x55c], 0
push eax
mov dword [ebp - 0x558], 0xffffffff
call fcn.10355a00
mov byte [ebp - 4], 0x42
mov dword [ebp - 0x4dc], str.err
mov dword [ebp - 0x4d8], 5
mov byte [ebp - 4], 0x40
mov dword [ebp - 0x234], 0xff
mov byte [ebp - 4], 0x45
lea eax, [ebp - 0x2d4]
mov dword [ebp - 0x2dc], 0
mov dword [ebp - 0x2d8], 0xffffffff
mov dword [ebp - 0x22c], eax
lea ecx, [ebp - 0x2d4]
lea eax, [ebp - 0x55c]
push eax
call fcn.10355b60
mov byte [ebp - 4], 0x47
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x248], eax
mov byte [ebp - 4], 0x45
mov dword [ebp - 0x234], 0x1ff
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 0
mov byte [ebp - 4], 0x4a
mov esi, dword [ebp - 0x2d8]
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x238], 0
test esi, esi
jns 0x1039e5ce
mov eax, dword [ebp - 0x2d0]
test eax, eax
jns 0x1039e5b6
mov eax, dword [ebp - 0x2c8]
test eax, eax
jns 0x1039e59f
mov eax, dword [ebp - 0x2c0]
test eax, eax
jns 0x1039e588
mov eax, dword [ebp - 0x2b8]
test eax, eax
jns 0x1039e571
mov eax, dword [ebp - 0x2b0]
test eax, eax
jns 0x1039e55a
mov eax, dword [ebp - 0x2a8]
test eax, eax
jns 0x1039e543
mov eax, dword [ebp - 0x2a0]
test eax, eax
jns 0x1039e52c
mov eax, dword [ebp - 0x298]
test eax, eax
jns 0x1039e515
mov eax, dword [ebp - 0x290]
test eax, eax
je 0x1039e4fc
lea ecx, [eax - 1]
jmp 0x1039e4fe
xor ecx, ecx
mov eax, dword [ebp - 0x288]
test eax, eax
je 0x1039e50b
dec eax
jmp 0x1039e50d
xor eax, eax
add eax, ecx
mov dword [ebp - 0x298], eax
mov ecx, dword [ebp - 0x280]
test ecx, ecx
je 0x1039e522
dec ecx
jmp 0x1039e524
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x2a0], eax
mov ecx, dword [ebp - 0x278]
test ecx, ecx
je 0x1039e539
dec ecx
jmp 0x1039e53b
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x2a8], eax
mov ecx, dword [ebp - 0x270]
test ecx, ecx
je 0x1039e550
dec ecx
jmp 0x1039e552
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x268]
test ecx, ecx
je 0x1039e567
dec ecx
jmp 0x1039e569
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x2b8], eax
mov ecx, dword [ebp - 0x260]
test ecx, ecx
je 0x1039e57e
dec ecx
jmp 0x1039e580
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x2c0], eax
mov ecx, dword [ebp - 0x258]
test ecx, ecx
je 0x1039e595
dec ecx
jmp 0x1039e597
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x2c8], eax
mov ecx, dword [ebp - 0x250]
test ecx, ecx
je 0x1039e5ac
dec ecx
jmp 0x1039e5ae
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x2d0], eax
mov ecx, dword [ebp - 0x248]
test ecx, ecx
je 0x1039e5c3
dec ecx
jmp 0x1039e5c5
xor ecx, ecx
lea esi, [ecx + eax]
mov dword [ebp - 0x2d8], esi
lea eax, [esi + 1]
mov dl, 1
mov ecx, eax
mov dword [ebp - 0x22c], eax
call fcn.103675e0
mov edi, eax
mov byte [edi + esi], 0
mov eax, dword [ebp - 0x290]
test eax, eax
je 0x1039e5f3
dec eax
jmp 0x1039e5f5
xor eax, eax
push eax
push dword [ebp - 0x294]
push edi
call fcn.103ce0b0
mov esi, dword [ebp - 0x290]
add esp, 0xc
test esi, esi
je 0x1039e612
dec esi
jmp 0x1039e614
xor esi, esi
mov eax, dword [ebp - 0x288]
test eax, eax
je 0x1039e621
dec eax
jmp 0x1039e623
xor eax, eax
push eax
push dword [ebp - 0x28c]
lea eax, [edi + esi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x288]
add esp, 0xc
test eax, eax
je 0x1039e643
dec eax
jmp 0x1039e645
xor eax, eax
add esi, eax
mov eax, dword [ebp - 0x280]
test eax, eax
je 0x1039e654
dec eax
jmp 0x1039e656
xor eax, eax
push eax
push dword [ebp - 0x284]
lea eax, [edi + esi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x280]
add esp, 0xc
test eax, eax
je 0x1039e676
dec esi
add esi, eax
mov eax, dword [ebp - 0x278]
test eax, eax
je 0x1039e683
dec eax
jmp 0x1039e685
xor eax, eax
push eax
push dword [ebp - 0x27c]
lea eax, [edi + esi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x278]
add esp, 0xc
test eax, eax
je 0x1039e6a5
dec eax
jmp 0x1039e6a7
xor eax, eax
add esi, eax
mov eax, dword [ebp - 0x270]
test eax, eax
je 0x1039e6b6
dec eax
jmp 0x1039e6b8
xor eax, eax
push eax
push dword [ebp - 0x274]
lea eax, [esi + edi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x270]
add esp, 0xc
test eax, eax
je 0x1039e6d8
dec esi
add esi, eax
mov eax, dword [ebp - 0x268]
test eax, eax
je 0x1039e6e5
dec eax
jmp 0x1039e6e7
xor eax, eax
push eax
push dword [ebp - 0x26c]
lea eax, [edi + esi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x268]
add esp, 0xc
test eax, eax
je 0x1039e707
dec eax
jmp 0x1039e709
xor eax, eax
add esi, eax
mov eax, dword [ebp - 0x260]
test eax, eax
je 0x1039e718
dec eax
jmp 0x1039e71a
xor eax, eax
push eax
push dword [ebp - 0x264]
lea eax, [esi + edi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x260]
add esp, 0xc
test eax, eax
je 0x1039e73a
dec esi
add esi, eax
mov eax, dword [ebp - 0x258]
test eax, eax
je 0x1039e747
dec eax
jmp 0x1039e749
xor eax, eax
push eax
push dword [ebp - 0x25c]
lea eax, [edi + esi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x258]
add esp, 0xc
test eax, eax
je 0x1039e769
dec eax
jmp 0x1039e76b
xor eax, eax
add esi, eax
mov eax, dword [ebp - 0x250]
test eax, eax
je 0x1039e77a
dec eax
jmp 0x1039e77c
xor eax, eax
push eax
push dword [ebp - 0x254]
lea eax, [esi + edi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x250]
add esp, 0xc
test eax, eax
je 0x1039e79c
dec esi
add esi, eax
mov eax, dword [ebp - 0x248]
test eax, eax
je 0x1039e7a9
dec eax
jmp 0x1039e7ab
xor eax, eax
push eax
push dword [ebp - 0x24c]
lea eax, [edi + esi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x22c]
add esp, 0xc
mov dword [ebp - 0x23c], eax
xor ecx, ecx
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x240], edi
call fcn.10367720
mov byte [ebp - 4], 0x4b
mov esi, 0x1ff
mov dword [ebp - 0x234], esi
and esi, 0xfffffeff
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x4f
mov ecx, dword [ebp - 0x2dc]
call fcn.10367720
mov dword [ebp - 0x2dc], 0
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0x2d4]
call fcn.10353b20
and esi, 0xffffff7f
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x55c]
call fcn.10353b20
and esi, 0xffffffbf
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x54
mov ecx, dword [ebp - 0x46c]
call fcn.10367720
mov dword [ebp - 0x46c], 0
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0x464]
call fcn.10353900
and esi, 0xffffffdf
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x4d4]
call fcn.10353900
and esi, 0xffffffef
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x59
mov ecx, dword [ebp - 0x3ac]
call fcn.10367720
mov dword [ebp - 0x3ac], 0
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x3a4]
call fcn.10353770
and esi, 0xfffffff7
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x3f4]
call fcn.10353770
and esi, 0xfffffffb
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x5e
mov ecx, dword [ebp - 0x354]
call fcn.10367720
mov dword [ebp - 0x354], 0
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x34c]
call fcn.10353670
and esi, 0xfffffffd
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x31c]
call fcn.10353670
and esi, 0xfffffffe
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x63
mov ecx, dword [ebp - 0x2f4]
call fcn.10367720
mov dword [ebp - 0x2f4], 0
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x21c]
call fcn.1036e4c0
mov byte [ebp - 4], 0x64
test bl, bl
je 0x1039e975
mov esi, dword [ebp - 0x244]
mov edx, dword [esi + 4]
mov ecx, edx
neg ecx
sbb ecx, ecx
lea eax, [edx - 1]
and ecx, eax
mov eax, dword [esi]
test eax, eax
je 0x1039e96e
cmp edx, 2
jae 0x1039e979
mov eax, 0x104571a6
jmp 0x1039e979
xor ecx, ecx
xor eax, eax
cmp dword [ebp - 0x22c], 2
jb 0x1039e988
mov edx, edi
test edi, edi
jne 0x1039e98d
mov edx, 0x104571a6
push 1
push 1
push ecx
push eax
push 8
push edx
lea ecx, [ebp - 0x21c]
call fcn.1035c920
test al, al
setne bl
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x21c]
call fcn.1036f560
mov byte [ebp - 4], 0x67
mov ecx, edi
call fcn.10367720
mov dword [ebp - 0x240], 0
mov dword [ebp - 4], 0x68
mov ecx, dword [ebp - 0x228]
call fcn.10367720
mov dword [ebp - 0x228], 0
mov dword [ebp - 4], 0xffffffff
mov al, bl
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.103b6385
mov esp, ebp
pop ebp
ret 8